在 TabPages 上自动调整 DataGridView 列的大小
AutoResize DataGridView Columns on TabPages
我在使用 DataGridView 的 AutoResize 时遇到一点问题。
我是这样做的:
for (int i = 0; i < list.Count; i++)
{
tabControl_Rozliczenie.TabPages.Add("Page " + list[i]);
var dataGridView = new DataGridView()
{
Name = "dataGridView_" + list[i],
Dock = DockStyle.Fill
};
dataGridView.CellValueChanged +=
new DataGridViewCellEventHandler(dataGridView_ety_CellValueChanged);
dataGridView.CellFormatting +=
new DataGridViewCellFormattingEventHandler(dataGridView_ety_CellFormatting);
dataGridView.DataSource = dataTable;
tabControl_Rozl.TabPages[i].Controls.Add(dataGridView);
dataGridView.AutoResizeColumns(DataGridViewAutoSizeColumnsMode.AllCells);
dgwList.Add(dataGridView);
}
它在上面添加了新的 TabPages 和 DataGridViews 但是这部分:
dataGridView.AutoResizeColumns(DataGridViewAutoSizeColumnsMode.AllCells)
仅在 tabPage[0] = 第一页上的 DataGridView 自动调整大小,在其余页面上不起作用。
谁能帮我找出代码问题?
假设是:
它必须在每个 TabControlPage 上自动调整 DataGridView 的大小。
这只是瞎猜,如果没有帮助,我们深表歉意,但问题可能是您将 dataGridView 添加到控件列表,然后 然后更改 AutoResizeColumns 选项?您是否尝试过将顺序更改为:
dataGridView.AutoResizeColumns(DataGridViewAutoSizeColumnsMode.AllCells);
tabControl_Rozl.TabPages[i].Controls.Add(dataGridView);
?
TabControl
有一个讨厌的习惯,就是阻止 unselected TabPages
的 children 进行布局。
因此,在填充 DataGridView
并设置其 AutoResizeColumns
属性:
tabControl_Rozliczenie.TabPages.Add("Page " + list[i]);
tabControl_Rozliczenie.SelectedTab = tabControl_Rozliczenie.TabPages["Page " + list[i]];
我在使用 DataGridView 的 AutoResize 时遇到一点问题。 我是这样做的:
for (int i = 0; i < list.Count; i++)
{
tabControl_Rozliczenie.TabPages.Add("Page " + list[i]);
var dataGridView = new DataGridView()
{
Name = "dataGridView_" + list[i],
Dock = DockStyle.Fill
};
dataGridView.CellValueChanged +=
new DataGridViewCellEventHandler(dataGridView_ety_CellValueChanged);
dataGridView.CellFormatting +=
new DataGridViewCellFormattingEventHandler(dataGridView_ety_CellFormatting);
dataGridView.DataSource = dataTable;
tabControl_Rozl.TabPages[i].Controls.Add(dataGridView);
dataGridView.AutoResizeColumns(DataGridViewAutoSizeColumnsMode.AllCells);
dgwList.Add(dataGridView);
}
它在上面添加了新的 TabPages 和 DataGridViews 但是这部分:
dataGridView.AutoResizeColumns(DataGridViewAutoSizeColumnsMode.AllCells)
仅在 tabPage[0] = 第一页上的 DataGridView 自动调整大小,在其余页面上不起作用。
谁能帮我找出代码问题?
假设是:
它必须在每个 TabControlPage 上自动调整 DataGridView 的大小。
这只是瞎猜,如果没有帮助,我们深表歉意,但问题可能是您将 dataGridView 添加到控件列表,然后 然后更改 AutoResizeColumns 选项?您是否尝试过将顺序更改为:
dataGridView.AutoResizeColumns(DataGridViewAutoSizeColumnsMode.AllCells);
tabControl_Rozl.TabPages[i].Controls.Add(dataGridView);
?
TabControl
有一个讨厌的习惯,就是阻止 unselected TabPages
的 children 进行布局。
因此,在填充 DataGridView
并设置其 AutoResizeColumns
属性:
tabControl_Rozliczenie.TabPages.Add("Page " + list[i]);
tabControl_Rozliczenie.SelectedTab = tabControl_Rozliczenie.TabPages["Page " + list[i]];