dataGridView1.Rows.Add添加内容
时间: 2023-05-31 17:05:55 浏览: 126
dataGridView1.Rows.Add方法用于向DataGridView控件中添加行。它的语法如下:
```csharp
dataGridView1.Rows.Add(Object[] values);
```
其中,values参数是一个对象数组,表示要添加的行的单元格的值。例如:
```csharp
dataGridView1.Rows.Add(new object[] { "John", "Doe", 25 });
```
这将向DataGridView控件中添加一行,其中第一列的值是"John",第二列的值是"Doe",第三列的值是25。
相关问题
dataGridView1.Rows.Add添加多列数据
可以使用以下代码添加多列数据到DataGridView控件中的新行:
```csharp
// 添加一行数据
dataGridView1.Rows.Add("列1数据", "列2数据", "列3数据", "列4数据");
```
这里我们假设DataGridView控件已经创建并绑定了数据源。Rows.Add方法会将新的一行数据添加到DataGridView控件中,并且每个参数对应一列数据。
如果需要添加多行数据,可以在循环中使用Rows.Add方法多次调用。例如:
```csharp
// 添加多行数据
for(int i = 0; i < 10; i++)
{
dataGridView1.Rows.Add("列1数据" + i.ToString(), "列2数据" + i.ToString(), "列3数据" + i.ToString(), "列4数据" + i.ToString());
}
```
这样就可以添加10行数据到DataGridView控件中。
当前代码会出现生成的datagreviw多出一行空白行,帮我改进一下解决这个问题: private void DataImport() //更新datagridview1 { try { lock (this) { if (dataGridView1.Rows.Count != 0) { dataGridView1.Rows.Clear(); } } for (int i = 0; i < Controller.StatusTable_Parameter.Count; i++) { if (Controller.StatusTable_Parameter[i][2].Substring(Controller.StatusTable_Parameter[i][2].IndexOf('=') + 1).Replace(" ", "\n\r") == "0") continue; dataGridView1.Rows.Add(); dataGridView1.Rows[dataGridView1.RowCount - 2].Cells[0].Value = Controller.StatusTable_Parameter[i][1].Substring(Controller.StatusTable_Parameter[i][1].IndexOf('=') + 1).Replace(" ", "\n\r"); for (int j = 2; j < Controller.StatusTable_Parameter[i].Count; j++) { dataGridView1.Rows[dataGridView1.RowCount - 2].Cells[j - 1].Value = Controller.StatusTable_Parameter[i][j].Substring(Controller.StatusTable_Parameter[i][j].IndexOf('=') + 1).Replace(" ", "\n\r"); } } } catch { Controller.MessageDisplay("ini参数设置导入出错!!!"); } }
可以尝试在添加新行之前,先设置DataGridView的RowTemplate,这样可以避免添加空白行。修改后的代码如下:
private void DataImport() //更新datagridview1
{
try
{
lock (this)
{
if (dataGridView1.Rows.Count != 0)
{
dataGridView1.Rows.Clear();
}
}
// 添加RowTemplate
dataGridView1.RowTemplate = new DataGridViewRow();
for (int i = 0; i < Controller.StatusTable_Parameter.Count; i++)
{
if (Controller.StatusTable_Parameter[i][2].Substring(Controller.StatusTable_Parameter[i][2].IndexOf('=') + 1).Replace(" ", "\n\r") == "0")
continue;
dataGridView1.Rows.Add();
dataGridView1.Rows[dataGridView1.RowCount - 2].Cells[0].Value = Controller.StatusTable_Parameter[i][1].Substring(Controller.StatusTable_Parameter[i][1].IndexOf('=') + 1).Replace(" ", "\n\r");
for (int j = 2; j < Controller.StatusTable_Parameter[i].Count; j++)
{
dataGridView1.Rows[dataGridView1.RowCount - 2].Cells[j - 1].Value = Controller.StatusTable_Parameter[i][j].Substring(Controller.StatusTable_Parameter[i][j].IndexOf('=') + 1).Replace(" ", "\n\r");
}
}
}
catch
{
Controller.MessageDisplay("ini参数设置导入出错!!!");
}
}
阅读全文