目标是让用户隐藏/显示/移动/调整列的大小,保存此布局,并在应用重新启动时恢复它。 我先告诉你我是怎么做到的。在GridView.Columns上,我附加到CollectionChanged,以及每个Column.With依赖项属性。当触发任何事件时,我将列的顺序,可见性和宽度保存到专有字符串,并保存到XML设置文件中。 但在我看来,这是一个相当多的手工工作 - 是否有流行的现有组件或实践来保存列布局?
答案 0 :(得分:2)
你可以在XAML中保存列吗?经过快速测试后,它似乎保存了相关信息。我从这开始:
<GridView>
<GridView.Columns>
<GridViewColumn Header="First Name" DisplayMemberBinding="{Binding FirstName}"/>
<GridViewColumn Header="Last Name" DisplayMemberBinding="{Binding LastName}"/>
<GridViewColumn Header="Age" DisplayMemberBinding="{Binding Age}"/>
</GridView.Columns>
</GridView>
在调整大小并移动一些之后,我在GridView.Columns
上打了XamlWriter.Save
并得到了这个:
<GridViewColumnCollection xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation">
<GridViewColumn Width="108.51" DisplayMemberBinding="{Binding Path=FirstName}">First Name</GridViewColumn>
<GridViewColumn DisplayMemberBinding="{Binding Path=Age}">Age</GridViewColumn>
<GridViewColumn Width="83.8533333333333" DisplayMemberBinding="{Binding Path=LastName}">Last Name</GridViewColumn>
</GridViewColumnCollection>