我为一个网格编写了一个wpf代码,它有5-6列,第一个列是名称。我想冻结这个专栏,意思是它不应该是可移动的。我试过这样做
<DataGridTemplateColumn Header="Name" Width="Auto" SortMemberPath="Name" CanUserReorder="False">但是这个代码的问题是,我不能移动我的name列来替换另一个列,但是我可以拖动任何其他列来代替它。比如..。我可以拖动我的shortName列代替name列。
我希望name列根本不移动,但其他列可以移动。有人能帮我吗?
发布于 2015-05-04 07:48:03
来自MSDN
冻结列总是按显示顺序排列的最左边的列。不能将冻结的列拖到未冻结的列组中,也不能将未冻结的列拖到冻结的列组中。
所以设置FrozenColumnCount ="1"应该能起作用
<DataGrid FrozenColumnCount="1" CanUserReorderColumns="True">
<DataGrid.Columns>
<DataGridTextColumn Header="Name"/>
<DataGridTextColumn Header="#1"/>
<DataGridTextColumn Header="#2"/>
<DataGridTextColumn Header="#3"/>
</DataGrid.Columns>
</DataGrid>https://stackoverflow.com/questions/30024871
复制相似问题