WPFでDataGridを使用して値を表示します。 今、私は緑色と赤色の列をしたいです。私はDataTriggerでそれを試しましたが、何も起こりません。WPF DataGridバインディングでスタイルを設定
私のXAML:
<DataGrid x:Name="dgAbos" ItemsSource="{Binding Source=AboList}" HorizontalAlignment="Stretch" Margin="10,30,10,10" VerticalAlignment="Stretch" Height="Auto" Width="Auto">
<DataGrid.Columns>
<DataGridTextColumn Header="ItemID" Binding="{Binding ItemID}" />
</DataGrid.Columns>
<DataGrid.RowStyle>
<Style TargetType="DataGridRow">
<Style.Triggers>
<DataTrigger Binding="{Binding Active}" Value="false">
<Setter Property="Background" Value="Red"></Setter>
</DataTrigger>
<DataTrigger Binding="{Binding Active}" Value="true">
<Setter Property="Background" Value="Green"></Setter>
</DataTrigger>
</Style.Triggers>
</Style>
</DataGrid.RowStyle>
</DataGrid>
バインディングのタイプがある:
ObservableCollection<OPCItem> AboList = new ObservableCollection<OPCItem>();
して表示する項目があるOPCItem:
:私は、リストを埋める方法class OPCItem
{
public String ItemID { get; set; }
public String Name { get; set; }
public String Value { get; set; }
public DateTime DateTime { get; set; }
public String Group { get; set; }
private Boolean _Active;
public String Active
{
get
{
return (_Active == true ? "Aktiv" : "Inaktiv");
}
set
{
_Active = Convert.ToBoolean(value);
}
}
}
AboList.Add(new OPCItem { ItemID = Item.ItemID, Group = GroupName, Active = "true" });
しかし、行が色を変えない理由は何ですか?
omg ...ありがとうございました。 – Phil795