#wpf #ivalueconverter #typeconverter
#wpf #ivalueconverter #typeconverter
Вопрос:
Я новичок в WPF. Я просто не понимаю, зачем нужны TypeConverters и IValueConverter в WPF. Назначение обоих объектов — преобразовать значение в определенный тип; но почему оба?
Заранее спасибо.
Комментарии:
1. Это был хороший вопрос, на который, по-видимому, на самом деле не было ответа. Преобразователь типов, по-видимому, является более сложным типом (не только двумя методами), на который может ссылаться атрибут , чтобы автоматически проверять, возможно ли какое-либо преобразование при присвоении свойства. Просто предположение. Кажется, это скорее строительный блок типа.
Ответ №1:
IValueConverter используется только в сценариях привязки данных. Это позволяет вам форматировать значения перед их отображением в пользовательском интерфейсе или анализировать значения из элементов управления пользовательского интерфейса, чтобы их можно было сохранить в источнике привязки. примером может быть преобразование флага IsDirty в «*» в пользовательском интерфейсе или экземпляра Color в экземпляр Brush. исходя из моего собственного опыта, я использовал IValueConverter только для целей форматирования (то есть, только для реализации метода Convert).
Производный класс TypeConverter в основном используется для преобразования в / из строковых значений. это можно использовать для установки свойства пользовательского типа в XAML.