#c_sharp #net #wpf #xaml
Мне нужно в качестве параметра для конвертера указать Binding, но это невозможно,
так как ConverterParameter не является DependencyProperty.
Все решения, которые я нашел в сети, подразумевали использование MultiBinding и это
работало. Пока мне не потребовалась обратная конвертация. Подскажите как быть.
UPD
Пришлось много чего писать в комментариях, перенесу это сюда на всякий случай.
Конвертер принимает V (Value) P (Parameter) а на выходе ждет R (Result)
Обратная конвертация устроена так же.
Если я использую MultiBinding, то конвертер будет принимать V[] (Values) и на выходе
ожидать R (Result)
Обратная конвертация будет принимать V (Value) а на выходе ждать R[] (Results)
Но у меня на самом деле есть 3 переменные (a,b,c). a = b * c
То есть для вычисления любой из этих переменных мне нужны две другие. А в случае
с мультибиндингом мне предлагает в обратной конвертации восстановить b и с из a
Ответы
Ответ 1
ConverterParameter не является DependencyProperty, и не подхватывает изменения. Таким образом, простое использование ConverterParameter. Необходимо использовать более честный подход. Заведите отдельный класс, который будет заниматься отображением точек модели в пиксельные координаты. Экземпляр этого класса и можно передавать в качестве параметра в конвертер. (реальный пример кода приведу позже)
Комментариев нет:
Отправить комментарий