根据表单所包含的数据视图的大小调整表单的大小

本文关键字:表单 调整 视图 包含 数据 | 更新日期: 2023-09-27 17:54:10

我的datagridview连接到一个数据源:

this.dataGridView1.DataSource = mydatatable;

我想把这些数据呈现给用户。如果它有超过X条线,那么它将有一个垂直滚动条。

将其放在表单中看起来不太好,因为表单的大小可能大于数据表的大小。我尝试根据datagridview的大小手动调整表单的大小,如下所示:

this.Size = dataGridView1.Size;

但是它不起作用(如果datagridview更小,它不会使表单更小)。如果它比它大,它就会覆盖其中的一部分)。也许有一种不通过表单就能显示表格的方法?或者有没有办法正确地调整它的大小?

我尝试了以下方法(作为对答案的回应):

this.dataGridView1.DataSource = competingCourses; 
this.dataGridView1.RightToLeft = RightToLeft.Yes;
this.dataGridView1.AutoSizeColumnsMode = dataGridViewAutoSizeColumnsMode.AllCells; 

我还有:

this.AutoSize=true; 
this.AutoSizeMode = System.Windows.Forms.AutoSizeMode.GrowAndShrink; 

它仍然不改变包含表单的大小

根据表单所包含的数据视图的大小调整表单的大小

尝试从DataGridView的高度和宽度构建一个新的Size对象,然后将其分配给窗体Size:

Size newSize = new Size(dataGridView1.Width, dataGridView1.Height);
this.Size = newSize;

您可以通过在表单上设置Autosize=TrueAutoSizeMode=GrowAndShrink来自动调整表单的大小。