Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/api/5.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Wpf 如何更改显示内容以使其与DataGrid中的ItemsSource不匹配?_Wpf_Datagrid_Itemssource - Fatal编程技术网

Wpf 如何更改显示内容以使其与DataGrid中的ItemsSource不匹配?

Wpf 如何更改显示内容以使其与DataGrid中的ItemsSource不匹配?,wpf,datagrid,itemssource,Wpf,Datagrid,Itemssource,我有一个DataGrid,其中DataContext是具有许多属性的对象列表 所有列都绑定到所述对象类型的不同属性 有一个文本属性,我只关心另一个bool属性是否设置为“true”-当它设置为“false”时,我根本不想显示文本属性 你有什么建议吗 我在想一些大致如下的事情: foreach (var cur in DG.ItemsSource) { if (!cur.BoolThatSignifiesIfICareAboutOtherProperty) { //some code tha

我有一个DataGrid,其中DataContext是具有许多属性的对象列表

所有列都绑定到所述对象类型的不同属性

有一个文本属性,我只关心另一个bool属性是否设置为“true”-当它设置为“false”时,我根本不想显示文本属性

你有什么建议吗

我在想一些大致如下的事情:

foreach (var cur in DG.ItemsSource) {
 if (!cur.BoolThatSignifiesIfICareAboutOtherProperty) {
  //some code that will make the cell for cur.PropertyIMayOrMayNotCareAbout
  //appear empty even though that property does have a value that the column
  //is bound to
 }
}
**编辑**

有人建议我使用数据触发器。这就是我尝试过的,但也不起作用。也没有任何错误,所以我不知道我做错了什么

这是我到目前为止所拥有的。不过,它不起作用。请让我知道我做错了什么:

 <DataGridTextColumn Header="EndDate" Binding="{Binding Path=EndDate, Converter={StaticResource DT2D}}">
                <DataGridTextColumn.CellStyle>
                    <Style TargetType="{x:Type DataGridCell}">
                        <Style.Triggers>
                            <DataTrigger Binding="{Binding Path=DoICare}" Value="False">
                                <Setter Property="Content" Value=" " />
                            </DataTrigger>
                        </Style.Triggers>
                    </Style>
                </DataGridTextColumn.CellStyle>
            </DataGridTextColumn>

我就是这样解决的-我只是把一些标签弄错了:

 <DataGridTextColumn Header="EndDate" Binding="{Binding Path=EndDate, Converter={StaticResource DT2D}}">
                <DataGridTextColumn.ElementStyle>
                    <Style TargetType="{x:Type TextBlock}">
                        <Style.Triggers>
                            <DataTrigger Binding="{Binding Path=DoICare}" Value="False">
                                <Setter Property="Visibility" Value="Hidden" />
                            </DataTrigger>
                        </Style.Triggers>
                    </Style>
                </DataGridTextColumn.ElementStyle>
            </DataGridTextColumn>


您正在寻找一个
DataTrigger
@HighCore,所以我以前从未使用过DataTrigger。这是我认为对我想要的最有意义的,但它不起作用。它实际上并没有使单元格显示为空-它仍然显示数据:-我将把它作为问题的编辑发布,因为我没有意识到在这里点击“回车”会发布评论,而不是让我输入更多