Вопрос

у меня есть Dictionary<string, FieldDefinition> Свойство зависимости, которое, когда я привязываю его к списку WPF, я хочу, чтобы оно просто печатало строку (а не FieldDefinition).

Есть ли способ сделать это?

Это было полезно?

Решение

Здесь я могу ошибаться, но мне кажется, что вы ищете Keys свойство в словаре;это вернет коллекцию TKey значения (в вашем случае это строковая часть вашего словаря, а не часть FieldDefinition, которая, кстати, будет доступна через Values Свойство)

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

Другие советы

Я бы создал класс, который либо реализует IDictionary

public class CustomDictionary : IDictionary
{
...
}

или наследует словарь

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

и переопределить ToString метод в этом классе следующим образом:

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

Создайте класс из словаря, переопределите ToString().

Лицензировано под: CC-BY-SA с атрибуция
Не связан с StackOverflow
scroll top