WPF DataGird 设置五列,最后一列可以无限拉伸,如何禁止
时间: 2024-12-14 21:13:35 浏览: 3
在WPF中,如果你想要在一个DataGrid中设置五列,并允许最后一列无限拉伸(通常表示为自动增长列),同时希望某些特定列不能被用户手动调整宽度,你可以这样做:
1. 创建`DataGrid`并设置列数和初始宽度:
```xml
<DataGrid AutoGenerateColumns="False">
<DataGrid.Columns>
<DataGridTextColumn Header="Column 1" Width="Auto"/>
<!-- 其他四列 -->
<DataGridTextColumn Header="Column 5 (Stretch)" Width="*"/>
</DataGrid.Columns>
</DataGrid>
```
在这里,`Width="Auto"`让前四列的宽度自适应内容,`Width="*"`使得第五列可以无限制地拉伸。
2. 禁止用户直接修改非自动增长列的宽度:
```xml
<DataGrid.Columns>
<!-- ... -->
<DataGridTextColumn Header="Column 1" Width="Auto" UserCanResizeWidth="False"/>
<!-- 其他四列,同样设置UserCanResizeWidth="False" -->
<DataGridTextColumn Header="Column 5 (Stretch)" Width="*" UserCanResizeWidth="True"/>
</DataGrid.Columns>
```
将`UserCanResizeWidth`属性设为`False`,则对应列的宽度就不会被用户手动改变。
阅读全文