在我的表的数据网格视图中设置列宽

时间:2015-01-12 08:37:07

标签: c# datagridview

当我尝试从datagridview中的表中获取特定列时出现错误。

以下是我填充表格的方法----

public DataTable createGridForForm(int rows, int columns)
        {

            // Create the output table.
            DataTable table = new DataTable();


                   for (int i = 1; i <= columns; i++)
            {
                table.Columns.Add("column " + i.ToString());
            }


            for (int i = 1; i < rows; i++)
            {
                DataRow dr = table.NewRow();
                // populate data row with values here
                table.Rows.Add(dr);
            }    

            return table;
        }

以下是我如何创建datagridview ------

private void createGridInForm(int rows, int columns)
        {

            DataGridView RunTimeCreatedDataGridView = new DataGridView();
            RunTimeCreatedDataGridView.DataSource = createGridForForm(rows, columns);
            DataGridViewColumn ID_Column = RunTimeCreatedDataGridView.Columns[0];
        ID_Column.Width = 200;

            int positionForTable = getLocationForTable();
            RunTimeCreatedDataGridView.Size = new Size(800, 200);
            RunTimeCreatedDataGridView.Location = new Point(5, positionForTable);
            myTabPage.Controls.Add(RunTimeCreatedDataGridView);

        }

我得到的错误是索引超出范围。它可能不是负数,必须小于大小。我想要做的是,我从文本文件中获取一个表,然后在运行时我以我的形式显示它,但表格的大小与我的数据网格视图不匹配,它并不好看。所以我想让表适合数据网格视图。

1 个答案:

答案 0 :(得分:0)

尝试 -

DataGridViewColumn ID_Column = dataGridView1.Columns[0];
ID_Column.Width = 200;