第一种方法:

for循环dataGridView1行,然后添加如下代码,dataGridView1[int columnIndex,int rowIndex].value="aaa";columnIndex表示列,rowIndex表示行。这种方法还有一个重载:dataGridView1[string columnName,int rowIndex].value="aaa";但是我测试了好几遍,前台总是显示不了列对应的值"aaa",百思不得其解,不知道是我哪里出了问题,欢迎高手指正。

第二种方法:

跟第一种方法类似,同样先for循环dataGridView1行,然后添加代码dataGridView1.Rows[i].Cells[0].Value = "aaa",前台还是跟第一种方法一样,无法显示动态绑定的列值"aaa";我讲代码贴出来,希望有高手看到告知一下小弟是哪里的问题?代码如下:

void DataBind()
        {
            ConnDatabase dago = new ConnDatabase();//连接数据库的类
            DataTable dt = dago.TestReadAllTable();                       
            dataGridView1.AutoGenerateColumns = true;
            for(int i=0;i<dataGridView1.Rows.Count;i++)
            {
                dataGridView1["行号", i].Value = "aaa";//第一种方法
                dataGridView1.Rows[i].Cells[0].Value = "aaa";//第二种方法
            }
            dataGridView1.DataSource = dt;
        }

这两种方法都以失败告终,木办法啦,使出最后的杀手锏。

第三种方法:

先修改DataTable表,然后再绑定,先在DataTable中新增一列,代码DataTable.Columns.Add("newCol");然后for循环DataTable行,绑定值,代码DataTable.Rows[i]["newCol"] = "aaa";最后将数据源绑定到DataTable即可,代码:dataGridView1.DataSource = DataTable。

代码如下:

void DataBind()
        {
            ConnDatabase dago = new ConnDatabase();//连接数据库的类
            DataTable dt = dago.TestReadAllTable();                       
            dataGridView1.AutoGenerateColumns = true;
             dt.Columns.Add("newCol");
            for (int i = 0; i < dt.Rows.Count ; i++)
            {
                dt.Rows[i]["newCol"] = i;
            }

            dataGridView1.DataSource = dt;
        }