保存并加载自动生成的列可见性

时间:2013-10-05 21:53:38

标签: c# wpf binding datagrid

我在WPF中有一个Datagrid和一个列选择对话框:

<DataGrid Margin="10,10,10,5" ItemsSource="{Binding ClientView, UpdateSourceTrigger=PropertyChanged}" AutoGenerateColumns="True"  AutoGeneratingColumn="DataGrid_AutoGeneratingColumn" IsReadOnly="True" />
<Border BorderBrush="Black" BorderThickness="1" Margin="{Binding ContextMargin}" HorizontalAlignment="Left" VerticalAlignment="Top">
    <ItemsControl ItemsSource="{Binding ElementName=DGrid, Path=Columns}" Background="WhiteSmoke" HorizontalAlignment="Left">
         <ItemsControl.ItemTemplate>
              <DataTemplate>
                    <CheckBox IsChecked="{Binding Visibility, Converter={StaticResource VisibilityToBoolConv}}" Margin="5,3,5,3" Content="{Binding Header}"/>
              </DataTemplate>
          </ItemsControl.ItemTemplate>
    </ItemsControl>
</Border>

工作正常。 我现在的问题是: 如何获取我的网格中可见的列以保存它们,并在下次启动应用程序后再次加载此设置? 我认为我必须将列可见性绑定到任何变量,但我不知道应该怎么做,因为我不知道如何命名datagrid的列。这是一个动态值。有谁知道如何解决这个问题?

0 个答案:

没有答案