簡體   English   中英

如何覆蓋Dictionary的ToString()

[英]How do I override ToString() for a Dictionary

我有一個Dictionary<string, FieldDefinition>依賴屬性,當我將它綁定到WPF列表框時,我希望它只打印字符串(而不是FieldDefinition)。

有沒有辦法做到這一點?

我會創建一個實現IDictionary的類

public class CustomDictionary : IDictionary
{
...
}

或繼承詞典

public class CustomDictionary : Dictionary<string, FieldDefinition>
{
...
}

並覆蓋此類中的ToString方法,如下所示:

public override string ToString() 
  {
     return "My custom string";
  }

我可能錯了,在這里,但我認為你正在尋找字典上的Keys屬性; 這將返回TKey值的集合(在您的情況下,您的字典中的'字符串'部分,而不是FieldDefinition部分,順便通過Values屬性可以使用)

<ListBox ItemsSource="{Binding MyDictionary.Keys}" />

從Dictionary派生一個類,重寫ToString()。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM