我有一个DataGrid它ItemsSource
绑定到CollectionViewSource
。
在每一列中我指定的Path
绑定的属性来获取特定信息显示。
我想要做的是,如果用户想要更多信息切换的一些列的一个复选框。 要做到这一点,我需要visibility属性绑定到复选框(带转换器)的价值,但我敢肯定的列的数据上下文与结合的干扰。
<DataGrid ItemsSource="{Binding Source={StaticResource cvs}}" ....>
<DataGrid.Columns>
<DataGridTextColumn Header="First Name" Binding="{Binding Path=FirstName}"
Visibility="{Binding IsChecked,
ElementName=IncludeFullHist,
Converter={StaticResource boolItemsConverter}}"/>
</DataGrid.Columns>
</DataGrid>
我需要的复选框我的视图模型为好,所以我有它的IsChecked
属性绑定到属性上我的视图模型
<CheckBox x:Name="IncludeFullHist" IsChecked="{Binding Path=ManagerFullHist }" />
对于我的网页的其他元素,我已经能够挂钩的知名度与绑定以下两种方法,但也似乎当我将其复制过来到DataGrid中的工作:
<TextBlock DockPanel.Dock="Left" Text=" Visible 2 "
Visibility="{Binding Path=DataContext.ManagerFullHist,
RelativeSource={RelativeSource FindAncestor,
AncestorType={x:Type UserControl}},
Converter={StaticResource boolItemsConverter}}"/>
<TextBlock DockPanel.Dock="Left" Text=" Visible 3 "
Visibility="{Binding Path=ManagerFullHist,
Source={StaticResource mainWinResource},
Converter={StaticResource boolItemsConverter}}"/>
对,我可以在数据网格解决这个问题的方法有什么建议?
请让我知道,如果我省略了,可能是有益的潜在的任何代码。