按标题名称/文本向特定列添加行

时间:2016-08-19 01:49:57

标签: c# gridview datagridview

我有一个名为" HeaderText_Name"在本专栏中,我想添加一行文字" Row"在那一栏下。

我试图为它编写一些伪代码

{"0": "design", "1": 4}

如果我这样做

databaseGridView.Rows["HeaderText_Name"].Add("Row");

无论如何,它都会将其添加到第一列。我也做不了像

这样的事情

databaseGridView.Rows.Add("""""行&#34);

然后它将空白添加到前两列,我也不知道该列的索引。如果是名字或文字,我会更有帮助。

这是我到目前为止的实际代码..

databaseGridView.Rows.Add("Row");

现在,completeInfoMatches有超过1个匹配,因为它是正则表达式。如何更改0才能使其正常工作?

更新

 for (int i = 0; i < completeInfoMatches.Count; i++) {
     databaseGridView.Rows.Add();
     databaseGridView.Rows[0].Cells[e.Node.Text].Value = completeInfoMatches[i].Groups[1].ToString();
}

由于Row.Add

,我得到了很多额外的空白行

2 个答案:

答案 0 :(得分:1)

尝试这样的事情:

foreach(int i = 0; i < completeInfoMatches.Count; i++){
   var index = databaseGridView.Rows.Add();
   databaseGridView.Rows[index].Cells[e.Node.Text].Value = completeInfoMatches[i].Groups[1].ToString();
}

答案 1 :(得分:0)

在@Forlani的帮助下......

int currentRowIndex = 0;
int actualRowIndex = databaseGridView.Rows.Count;
for (int i = 0; i < completeInfoMatches.Count; i++) {
    var index = 0;
    if (actualRowIndex < completeInfoMatches.Count) {
         index = databaseGridView.Rows.Add();
    }
    databaseGridView.Rows[currentRowIndex].Cells[e.Node.Text.Replace(" ", string.Empty)].Value = completeInfoMatches[i].Groups[1].ToString();
    currentRowIndex = currentRowIndex + 1;
}