Я хочу привязать свойство контроля только для чтения к моей модели представления, чтобы это значение было доступно в модели представления.
Каков наилучший способ сделать это?
Например, я хотел бы привязать ActualWidth
к свойству в моей модели представления. Значение ширины генерируется WPF с использованием его логики компоновки, поэтому я не могу генерировать это значение в моей модели представления и нажимать его на свойство управления, как это обычно бывает. Вместо этого мне нужно, чтобы WPF генерировал значение и подталкивал его к модели представления.
Я бы просто использовал Mode=OneWayToSource
, но это не работает для свойств только для чтения:
<Border
...
ActualWidth="{Binding MyDataModelWidth, Mode=OneWayToSource}"
>
... child controls ...
</Border>
То, как я делаю это в настоящее время, - это обработать SizeChanged
для границы, а код-загладит это значение в модели представления, но это не совсем правильно.
Кто-нибудь уже решил эту проблему?
UPDATE: Мой вопрос фактически является дубликатом этого: Нажатие свойств GUI только для чтения обратно в ViewModel