且构网

分享程序员开发的那些事...
且构网 - 分享程序员编程开发的那些事

改变真/假到图像

更新时间:2023-10-14 14:40:16

使用的DataGridTemplateColumn 提供一个DataTemplate为包含图像列,并使用值转换器或一个数据触发器来设置基于列的值的图像源。下面是一个使用数据触发的例子:

 < DataGridTemplateColumn> 
< DataGridTemplateColumn.CellTemplate>
<&DataTemplate的GT;
<图像名称=MYIMAGE来源=TrueImage.png/&GT;
&LT; DataTemplate.Triggers&GT;
&LT; DataTrigger绑定={结合BoolColumn}VALUE =FALSE&GT;
&LT;二传手的TargetName =MYIMAGE属性=源VALUE =FalseImage.png/&GT;
&LT; / DataTrigger&GT;
&LT; /DataTemplate.Triggers>
&LT; / DataTemplate中&GT;
&LT; /DataGridTemplateColumn.CellTemplate>
&LT; / DataGridTemplateColumn&GT;


i have a column in a datagrid that the content is True/false, how can i change this true/false(boolean) to a image, according to the text?

I'm using c# wpf.

Edit:

<dg:DataGridTemplateColumn  MinWidth="70" Header=" Is Done2">
    <dg:DataGridTemplateColumn.CellTemplate>
        <DataTemplate>
            <Image Name="imgIsDone" Source="../Resources/Activo.png"/>
            <DataTemplate.Triggers>
                <DataTrigger Binding="{Binding Path=IsDone}" Value="False">
                    <Setter TargetName="imgIsDone" Property="Source" Value="../Resources/Inactivo.png"/>
                </DataTrigger>
            </DataTemplate.Triggers>
        </DataTemplate>
    </dg:DataGridTemplateColumn.CellTemplate>
</dg:DataGridTemplateColumn>

Use a DataGridTemplateColumn to supply a DataTemplate for the column that contains an Image, and use a value converter or a data trigger to set the image source based on the value of the column. Here is an example that uses a data trigger:

<DataGridTemplateColumn>
    <DataGridTemplateColumn.CellTemplate>
        <DataTemplate>
            <Image Name="MyImage" Source="TrueImage.png"/>
            <DataTemplate.Triggers>
                <DataTrigger Binding="{Binding BoolColumn}" Value="False">
                    <Setter TargetName="MyImage" Property="Source" Value="FalseImage.png"/>
                </DataTrigger>
            </DataTemplate.Triggers>
        </DataTemplate>
    </DataGridTemplateColumn.CellTemplate>
</DataGridTemplateColumn>