Я хочу текстовое поле, в котором всегда будет применен конвертер для привязки. таким образом, мне не нужно указывать конвертер, стиль уже содержит используемый конвертер.
Это то, что я уже пробовал:
У меня есть ViewModel, привязанная к просмотру. Я перезаписываю текстовый текст в текстовом поле в этом представлении, используя свойство модели представления. Это позволяет мне использовать общий стиль для моего текстового поля
У меня есть следующий стиль:
<Style x:Key="DateTimeTextBox" TargetType="TextBox">
<Setter Property="ToolTipService.ShowDuration" Value ="40000"/>
<Setter Property="Text" Value ="{Binding Path=.,Converter={StaticResource myConverter},UpdateSourceTrigger=PropertyChanged}"/>
<Style.Triggers>
<Trigger Property="Validation.HasError" Value="true">
<Setter Property="ToolTip" Value="Unknown date format"/>
</Trigger>
</Style.Triggers>
</Style>
В представлении я хочу, чтобы следующее текстовое поле было привязано к объекту DateTimeValueToBind вместо всей модели представления:
<TextBox Style="{StaticResource DateTimeTextBox}" DataContext="{Binding DateTimeValueToBind}"/>
Свойство DateTimeValueToBind правильно отображается в текстовом поле, однако оно больше не связано (когда я его изменял, свойство viewmodel не изменилось)
Я пытался добавить Mode = TwoWay в параметры привязки, но это ничего не изменило.
Не могли бы объяснить, почему свойство DateTimeValueToBind больше не связано в этом контексте?
Заранее спасибо