WPFリストビュー内のすべてのテキストブロックを確認するにはどうすればよいですか?今、私は各テキストブロックに適用しなければならないスタイルを定義しました。こんな感じ
<Style x:Key="orderDetailsTextBlock" TargetType="TextBlock" >
<Style.Triggers>
<DataTrigger Binding="{Binding Status}" Value="Failed">
<Setter Property="TextDecorations" Value="Strikethrough" />
</DataTrigger>
</Style.Triggers>
</Style>
私が欲しいのは、これをListViewItemStyleブロック内で一度適用できるようにすることです。
こんな風にやってみました
<Style x:Key="ordersListViewItemStyle" TargetType="{x:Type ListViewItem}">
<Style.Triggers>
<DataTrigger Binding="{Binding Status}" Value="Failed">
<Setter Property="TextBlock.TextDecorations" Value="Strikethrough" />
</DataTrigger>
</Style.Triggers>
</Style>
しかし、これは機能しません。どんな助けでもありがたいです。
更新 ListViewのXAMLを次のように更新しました
<ListView x:Name="orderDetails" AlternationCount="2" ItemContainerStyle="{StaticResource ordersListViewItemStyle}" >
<ListView.Resources>
<Style TargetType="TextBlock">
<Style.Triggers>
<DataTrigger Binding="{Binding Status}" Value="Failed">
<Setter Property="TextDecorations" Value="Strikethrough" />
</DataTrigger>
</Style.Triggers>
</Style>
</ListView.Resources>
<ListView.View>
<GridView>
<GridViewColumn Width="100" Header="Статус" >
<GridViewColumn.CellTemplate>
<DataTemplate>
<TextBlock
Text="{Binding Path=Status, Mode=OneWay, UpdateSourceTrigger=PropertyChanged}"
ToolTip="{Binding Path=Message, Mode=OneWay, UpdateSourceTrigger=PropertyChanged}"
TextAlignment="Center" />
</DataTemplate>
</GridViewColumn.CellTemplate>
</GridViewColumn>
</GridView>
</ListView.View>
</ListView>
何も起こりません。私は何を間違えましたか?