【发布时间】:2010-11-04 18:28:45
【问题描述】:
我正在 Windows 窗体上填充 DataGridView 控件(C# 2.0 不是 WPF)。
我的目标是显示一个网格,用单元格整齐地填充所有可用宽度 - 即右侧没有未使用的(深灰色)区域,并根据其包含的数据适当调整每列的大小,但是还允许用户根据自己的喜好调整任何列的大小。
我试图通过将每列的 AutoSizeMode 设置为 DataGridViewAutoSizeColumnMode.AllCells 来实现此目的,除了我按顺序设置为 DataGridViewAutoSizeColumnMode.Fill 的列之一以确保网格的整个区域都整齐地填充数据。 (我不介意当用户尝试调整此列的大小时,它会弹回确保始终使用水平空间的大小。)
但是,正如我所提到的,一旦加载,我希望允许用户调整列的大小以满足他们自己的要求 - 在为每一列设置这些 AutoSizeMode 值时,用户似乎无法再调整这些列的大小。
我尝试不设置允许调整大小的所有列的 AutoSizeMode,但不会根据单元格包含的数据设置初始大小。加载数据后将网格的 AutoSizeMode 更改回“未设置”时,也会出现相同的结果。
我在这里是否缺少允许自动设置默认列宽和用户调整大小的设置,或者在填充 DataGridView 控件时我必须使用其他技术吗?
【问题讨论】:
-
不要将其设置为“未设置”,将其设置为 “无” 以便调整大小 不会恢复返回 - 已针对 c# 、 . net2.0
标签: c# winforms datagridview