2015-12-31 61 views
0

DataGridView如何将更多单元格添加到datagridview的列中?

现在我有一个单元格,我在设计器中添加了它,但是如果我想在我的代码中添加更多单元格?

我试图在构造函数中要做到:

DataGridViewRow row = (DataGridViewRow)dataGridView1.Rows[0].Clone(); 
row.Cells[0].Value = "XYZ"; 
row.Cells[1].Value = 50.2; 
dataGridView1.Rows.Add(row); 

但是,得到的异常上:

row.Cells[1].Value = 50.2; 

指数超出范围。必须为非负值且小于集合的大小

+1

试试这个:HTTP ://stackoverflow.com/questions/2377400/how-to-add-column-dynamically-in-datagridview-using-c-sharp – W92

回答

0

是的,您应该会收到异常。看看你的代码如下。与row.Cells[1]你实际上指的是你的gridview中的第二列,这显然不存在,所以最终的结果。

row.Cells[1].Value = 50.2; 

如果你想有另一列网格然后可以添加使用你的设计师表面(或)创建所需的列DataTable并将其设置为你的GridView的DataSource

如何创建一个DataTable并将其附加到GridView?

搜索Google

编辑:

如果你还在苦苦理解我的意见,然后这是我的意思是说(示例代码)

public Form1() 
    { 
     InitializeComponent(); 

     DataTable dt = new DataTable(); 
     DataColumn dc = new DataColumn("Message Subject"); 
     dt.Columns.Add(dc); 

     DataRow dr = dt.NewRow(); 
     dr[dc] = "test"; 

     DataRow dr1 = dt.NewRow(); 
     dr1[dc] = "test123"; 

     dt.Rows.Add(dr); 
     dt.Rows.Add(dr1); 

     this.dataGridView1.DataSource = dt; 
    } 
+0

我想这是我的错误。我想用我的代码将一个单元格添加到现有列,它将文本添加到第一个单元格。 –

+0

@HaimShabort,不是这样。创建一个DataTable并填充数据,然后将该数据表附加到您的GridView。检查答案中的链接以获得大量示例。 – Rahul

+0

@HaimShabort,如果有帮助,请参阅编辑答案。 – Rahul

相关问题