Xaml 文本块don'中的数据触发器;t更新文本属性(但其他类似前景)
对于提供3个DateTime属性的类,我有Xaml 文本块don'中的数据触发器;t更新文本属性(但其他类似前景),xaml,data-binding,styles,datatemplate,Xaml,Data Binding,Styles,Datatemplate,对于提供3个DateTime属性的类,我有DataTemplate,我希望根据DateSourceID值更改显示的属性。这是数据模板的一部分代码: <DataTemplate DataType="{x:Type vm:ImageDataItemViewModel}"> <Grid> <TextBlock Text="{Binding DateTimeTIF, Mode=OneWay}" Style=&qu
DataTemplate
,我希望根据DateSourceID
值更改显示的属性。这是数据模板的一部分
代码:
<DataTemplate DataType="{x:Type vm:ImageDataItemViewModel}">
<Grid>
<TextBlock Text="{Binding DateTimeTIF, Mode=OneWay}" Style="{StaticResource DateTimeHeaderStyle}" />
</Grid>
</DataTemplate>
DateSourceID
属性的任何更改都会被Style.Trigger
和前台
属性识别,但文本
属性保持不变!
我检查了转换器、DateTimeTIFF、DateTimeDigitalized和DateTimeOriginal的属性值。我添加了前台更新,以检查Style.Trigger是否识别DateSourceID更改,前台是否已更新,但文本内容保持不变!最后,我还从Style.Trigger中删除了绑定,并为Text属性使用了固定内容。结果是一样的——没有改变
你知道这段代码有什么问题吗?谢谢你的帮助
<Style x:Key="DateTimeHeaderStyle" TargetType="{x:Type TextBlock}" >
<Setter Property="Margin" Value="5,5,0,0"/>
<Style.Triggers>
<DataTrigger Binding="{Binding PageResetAttributeVM.DateSourceID, Mode=OneWay, Source={StaticResource Locator}, Converter={StaticResource Enum2Boolean}, ConverterParameter=dtTIFF}" Value="True">
<Setter Property="Text" Value="{Binding DateTimeTIFF, Mode=OneWay}"/>
<Setter Property="Foreground" Value="Yellow"/>
</DataTrigger>
<DataTrigger Binding="{Binding PageResetAttributeVM.DateSourceID, Mode=OneWay, Source={StaticResource Locator}, Converter={StaticResource Enum2Boolean}, ConverterParameter=dtDIGIT}" Value="True">
<Setter Property="Text" Value="{Binding DateTimeDigitalized, Mode=OneWay}"/>
<Setter Property="Foreground" Value="Blue"/>
</DataTrigger>
<DataTrigger Binding="{Binding PageResetAttributeVM.DateSourceID, Mode=OneWay, Source={StaticResource Locator}, Converter={StaticResource Enum2Boolean}, ConverterParameter=dtORIGINAL}" Value="True">
<Setter Property="Text" Value="{Binding DateTimeOriginal, Mode=OneWay}"/>
<Setter Property="Foreground" Value="Green"/>
</DataTrigger>
</Style.Triggers>
</Style>