根据其内容重新调整DataGridView的大小

时间:2013-09-11 11:15:38

标签: c# winforms datagridview resize

我希望根据其内容重新调整DataGridView的大小。因为网格视图的数据源可能具有不同的大小,具体取决于其中的数据。我发现根据表单大小调整DataGridview的大小,但无法根据其内容重新调整DataGridView的大小。 任何人都有一些想法? enter image description here

1 个答案:

答案 0 :(得分:2)

首先使用 Anchor 属性来锚定表单元素以形成边框。 我做了一个示例表格来说明它。有一个带有一些随机控件的groupBox和带有许多列的dataGridView:

Example form with DataGridView and some random controls

以下是表单元素的Anchor设置:

enter image description here

现在,当我加载表单时,我计算dataGridView列的总宽度并相应地增加from宽度:

    private void Form1_Load(object sender, EventArgs e)
    {
        int totalWidth = 0;
        foreach (DataGridViewColumn col in dataGridView1.Columns)
            totalWidth += col.Width;

        //assign Form1.width (add 100 extra pixels for borders etc.)
        this.Width = totalWidth + groupBox1.Width + 100;
    }