我想实现一个功能,允许用户调整 DataGridView 列的大小,但不影响相邻列。我注意到在许多程序中您可以调整特定列的大小,并且左侧或右侧的所有列都将保持固定大小。不过,这不是 .NET 中的默认行为,因为当我展开一列时,右侧的列将等量压缩以考虑旧列的增加大小。
有没有办法阻止这种情况发生?
编辑:
我显然没有解释最好的,所以让我们再试一次:
我有一个包含 8 列和一堆行的 DataTable。我将该 DataTable 添加为 DataGridView 的 DataSource。当我的表单打开时,8 列均匀分布在设置为AutoSizeColumnsMode = System.Windows.Forms.DataGridViewAutoSizeColumnsMode.Fill;
. 我想以这种方式保持 AutoSizeColumsMode 。不会调整窗体或控件的大小。只有控件内的列。
我想要的是用户能够调整单个列的大小(例如第 3 列),而不会影响其右侧所有列的大小。默认行为是调整所有其他列的大小以适应新更改。但是,我希望它只将列的大小立即调整到右侧。这样,它不会搞砸在第 8 列上设置的任何自定义尺寸。
我今天早些时候看到一个应用程序正确地做到了这一点,但我希望我能记住它是什么,这样我就可以截屏了。我所知道的是,当我调整表格中间一列的大小时,它并没有改变右侧所有列的宽度(只有紧挨着它的那一列)。