表題通りです。下記の様に行いましたがデータをセットしても変わりません。
背景色を行単位で変更(背景色)したい
おかしな点をご指摘ください。
よろしくお願いいたします。
Windows11 / 10 VS2019 C# WPF
xaml
1 <ListView Margin = "8,0" x:Name="lvDatas" BorderThickness="1" ScrollViewer.VerticalScrollBarVisibility="Auto" FontSize="14" 2 GridViewColumnHeader.Click="GridViewColumnHeaderClickedHandler" MouseDoubleClick="lvDatas_MouseDoubleClick" PreviewMouseDown="lvDatas_PreviewMouseDown"> 3 <ListView.Resources> 4 <Style TargetType="{x:Type ListViewItem}"> 5 <Setter Property="Template"> 6 <Setter.Value> 7 <ControlTemplate TargetType="{x:Type ListViewItem}"> 8 <GridViewRowPresenter /> 9 </ControlTemplate> 10 </Setter.Value> 11 </Setter> 12 </Style> 13 </ListView.Resources> 14 <ListView.ItemContainerStyle> 15 <Style TargetType="{x:Type ListViewItem}"> 16 <Setter Property="Background" Value="Pink" /> 17 <Style.Triggers> 18 <DataTrigger Binding="{Binding judge}" Value="yes"> 19 <Setter Property="BorderBrush" Value="Blue"/> 20 <Setter Property="Background" Value="Red"/> 21 </DataTrigger> 22 </Style.Triggers> 23 24 </Style> 25 </ListView.ItemContainerStyle> 26 <ListView.View> 27 <GridView> 28 <GridViewColumn Header="No" DisplayMemberBinding="{Binding No}" Width="20"/> 29 <GridViewColumn Header="委託元" DisplayMemberBinding="{Binding Entruster}" Width="68"/> 30 <GridViewColumn Header="営業コード" DisplayMemberBinding="{Binding EntrusterNo}" Width="80"/> 31 : 32 : 33 </GridView> 34 </ListView.View> 35 </ListView>
ビハインドコード
xaml.cs
1 // 処理済みに背景色セットの準備 2 Model.judge = "no"; 3 4 5 : 何らかの処理 6 : 7 8 // 処理済みに背景色セット 9 Model.judge = "yes"; <- ここで背景色の変更をセットしているつもりです。 10 実際には変わらない
ViewModel.cs
1class ViewModel : INotifyPropertyChanged 2{ 3 public event PropertyChangedEventHandler PropertyChanged; 4 : 5 6 // 修正済みデータに背景色をセットする 7 public string _judge; 8 public string judge 9 { 10 get { return this._judge; } 11 set 12 { 13 if (this._judge != value) 14 { 15 this._judge = value; 16 this.PropertyChanged?.Invoke(this, new PropertyChangedEventArgs(nameof(judge))); // <- これがないと変更の有無が xaml 側に知らされない 17 } 18 } 19 }

回答2件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。