根据条件

时间:2015-06-03 16:12:45

标签: wpf listview

我的ListView包含我的对象,我的一个对象属性值为bool

<GridViewColumn Width="100" Header="FileCheck " DisplayMemberBinding="{Binding IsFileOK}" />

如何用我自己的文字和我自己的颜色替换它,而不是显示这个变量值(真或假)?

例如:

文件正常//绿色

文件损坏//红色

这就是我的尝试:

<Style TargetType="ListViewItem">
    <Style.Triggers>
        <DataTrigger Binding="{Binding IsFileOK}" Value="false">
            <Setter Property="Background" Value="Green" />
        </DataTrigger>
        <DataTrigger Binding="{Binding IsFileOK}" Value="true">
            <Setter Property="Background" Value="Red" />
        </DataTrigger>
    </Style.Triggers>
</Style>

3 个答案:

答案 0 :(得分:1)

试试这个

<ListView.ItemContainerStyle>
 <Style TargetType="{x:Type ListBoxItem}">
   <Style.Triggers>
     <DataTrigger Binding="{Binding IsFileOK}" Value="False">
        <Setter Property="Background" Value="Green" />
     </DataTrigger>
     <DataTrigger Binding="{Binding IsFileOK}" Value="True">
        <Setter Property="Background" Value="Red" />
     </DataTrigger>
  </Style.Triggers>
 </Style>
</ListView.ItemContainerStyle>

答案 1 :(得分:0)

想法是使用样式和触发器修改背景和文本。 e.g。

<ListView.Resources>
            <Style TargetType="ListViewItem">
                <Setter Property="Background" Value="Blue"></Setter>
                <Style.Triggers>
                    <Trigger Property="IsMouseOver" Value="True">
                        <Setter Property="Background" Value="Red"></Setter>
                    </Trigger>
                </Style.Triggers>
            </Style>
        </ListView.Resources>

因此,您可以使用Trigger替换DataTrigger以使用视图模型中的属性。

答案 2 :(得分:0)

使用以下代码实现此目的,

<ListView.Resources>
            <Style TargetType="ListViewItem">
                <Setter Property="Background" Value="Blue"></Setter>
                <Style.Triggers>
                    <DataTrigger Binding="{Binding IsFileOK}" Value="True">
                        <Setter Property="Background" Value="Red"></Setter>
                    </DataTrigger>
                </Style.Triggers>
            </Style>
        </ListView.Resources>