2

私はDictionary<string, FieldDefinition>依存関係プロパティを持っています。それを WPF リスト ボックスにバインドするときに、文字列 (FieldDefinition ではなく) だけを出力する必要があります。

それを行う方法はありますか?

4

3 に答える 3

7

IDictionaryを実装するクラスを作成します

public class CustomDictionary : IDictionary
{
...
}

または辞書を継承します

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

ToStringこのクラスのメソッドを次のようにオーバーライドします。

public override string ToString() 
  {
     return "My custom string";
  }
于 2010-01-07T22:34:06.910 に答える
3

Keysここでは間違っているかもしれませんが、辞書でプロパティを探していると思います。これは値のコレクションを返しTKeyます(あなたの場合、プロパティを介して付随的に利用できるFieldDefinition部分ではなく、辞書の「文字列」部分ですValues

<ListBox ItemsSource="{Binding MyDictionary.Keys}" />
于 2010-01-07T23:31:21.730 に答える
2

Dictionaryからクラスを派生させ、ToString()をオーバーライドします。

于 2010-01-07T22:33:36.457 に答える