【发布时间】:2019-10-07 12:57:10
【问题描述】:
我有一个 RightToLeft = true 的简单表单。 在表单中有一个 AutoScroll = true 的面板。在面板中有一个很长的宽度(2000px)的 DataGridView。 用户可以通过单击“添加列”按钮来添加列。
这是“添加列”按钮点击事件的代码:
private void button1_Click(object sender, EventArgs e)
{
_index++;
dataGridView1.Columns.Add(new DataGridViewTextBoxColumn() { Name = $"Col{_index}",HeaderText = $"Col{_index}"});
}
问题是:当用户添加一些列并第一次单击 ColumnHeader 的一个边框以拖动它并调整列的大小时,面板将滚动到左端并且列将非常宽,这自然不是我想要的行为.在接下来的点击和调整每件事情的完美。 我该如何解决这个问题? 谢谢
【问题讨论】:
-
你有
[DataGridView].AutoSizeColumnsMode = DataGridViewAutoSizeColumnsMode.Fill,也许吧?否则,您可以在创建列时设置列的Width。 -
AutoSizeColumnsMode 有它的默认值 = none。创建列时设置宽度并不能解决问题
标签: c# winforms user-interface datagridview datagridviewcolumn