C# 在WPF C中从DataGrid上的DataTable隐藏行#
我试图从DataTable中隐藏特定的行,但我只能隐藏列 我找到了一些与DataGridView相关的解决方案,但它们不一样,对我来说不起作用 在我的xaml文件中,我有:C# 在WPF C中从DataGrid上的DataTable隐藏行#,c#,.net,wpf,datatable,datagrid,C#,.net,Wpf,Datatable,Datagrid,我试图从DataTable中隐藏特定的行,但我只能隐藏列 我找到了一些与DataGridView相关的解决方案,但它们不一样,对我来说不起作用 在我的xaml文件中,我有: <DataGrid Visibility="Visible" HorizontalAlignment="Stretch" Name="dataGrid_first" VerticalAlignment="Stretch" Width="Auto" Grid.Column="1" Grid.Row="2" >
<DataGrid Visibility="Visible" HorizontalAlignment="Stretch" Name="dataGrid_first" VerticalAlignment="Stretch" Width="Auto" Grid.Column="1" Grid.Row="2" >
</DataGrid>
它正在工作。要隐藏列,我将执行以下操作:
dataGrid_first.Columns[i].Visibility = Visibility.Hidden;
其中“i”是正确的列号
我怎样才能隐藏一行 我也建议过滤,而且我不会使用太旧的DataTable。 您可以使用隐藏行
<DataGrid ItemsSource="{Binding DataView}">
<DataGrid.RowStyle>
<Style TargetType="DataGridRow">
<!-- your column name, visibility was not working if there is no converter -->
<Setter Property="Visibility" Value="{ Binding Path=IsVisible ,Converter={StaticResource BoolToVisibilityConverter}}"></Setter>
</Style>
</DataGrid.RowStyle>
</DataGrid>
如果不设置DataContext,则组件将成为上下文,因此可以在其中添加DataView属性(但如果可以,请使用ViewModels) 我也建议过滤,而且我不会使用太旧的DataTable。 您可以使用隐藏行
<DataGrid ItemsSource="{Binding DataView}">
<DataGrid.RowStyle>
<Style TargetType="DataGridRow">
<!-- your column name, visibility was not working if there is no converter -->
<Setter Property="Visibility" Value="{ Binding Path=IsVisible ,Converter={StaticResource BoolToVisibilityConverter}}"></Setter>
</Style>
</DataGrid.RowStyle>
</DataGrid>
如果不设置DataContext,则组件将成为上下文,因此可以在其中添加DataView属性(但如果可以,请使用ViewModels) 隐藏特定行的条件是什么?一种简单的方法是使用DataView
Filter
Property。我有两个相似的datagrid,我试图展示两个数据库之间的差异。你能写一些简单的例子吗?为什么给网格数据,然后试图隐藏其中的一些。为什么不给它你想要它显示的数据呢。换句话说,首先过滤数据。我可以给出正确的数据。问题是我无法筛选正确的行。隐藏特定行的条件是什么?一种简单的方法是使用DataViewFilter
Property。我有两个相似的datagrid,我试图展示两个数据库之间的差异。你能写一些简单的例子吗?为什么给网格数据,然后试图隐藏其中的一些。为什么不给它你想要它显示的数据呢。换句话说,首先过滤数据。我可以给出正确的数据。问题是我无法筛选正确的行。
myDataTable.Rows[i]["IsVisible"] = false;