首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > .NET > .NET Framework >

winform dataGridView动态添加DataGridViewTextBoxColumn 录入数据获取值,该怎么解决

2012-05-10 
winform dataGridView动态添加DataGridViewTextBoxColumn 录入数据获取值C# codefor (int i 0 i 5 i

winform dataGridView动态添加DataGridViewTextBoxColumn 录入数据获取值

C# code
for (int i = 0; i < 5; i++){   DataGridViewTextBoxColumn text = new DataGridViewTextBoxColumn();   text.Name = ds1.Tables[0].Columns[i].ColumnName;   text.DataPropertyName = ds1.Tables[0].Columns[i].ColumnName;   dataGridView1.Columns.Add(text);}   DataGridViewTextBoxColumn text1 = new DataGridViewTextBoxColumn();   text1.HeaderText = "药品数量";   text1.Name = "MedicineNum";   text1.DataPropertyName = "MedicineNum";   dataGridView1.Columns.Add(text1);   dataGridView1.DataSource = ds1.Tables[0];   ds1.Tables[0].Columns.Add(new DataColumn("MedicineNum", typeof(int)));   dataGridView1.Columns["MedicineCode"].HeaderText = "药品编号";   dataGridView1.Columns["MedicineName"].HeaderText = "药品名称";   dataGridView1.Columns["MedicineSpec"].HeaderText = "规格";   dataGridView1.Columns["MedicineInfo"].HeaderText = "使用病症";   dataGridView1.Columns["Remark"].HeaderText = "备注信息";

先根据datasouce创建5列,然后额外增加一列,这里录入数据并获取录入的值,总是报未将对象引用设置到对象的实例,请问如何正确的实现该功能,谢谢
C# code
for (int j = 1; j <= dataGridView1.Rows[i].Cells.Count; j++){    if (this.dataGridView1.Columns[j].HeaderText.ToString() == "药品数量")    {       string StrNum = dataGridView1.Rows[1].Cells["MedicineNum"].Value.ToString();//在上一行报错      if (StrNum != "" && StrNum != "0")     {        string SqlStr = "insert into [*] (###) values ('" + #+ "','" + #+ "','" + #+ "')";        sqlconn.ExecuteNoQuery(SqlStr);        MessageBox.Show("信息添加成功", "系统提示");      }      else      {         MessageBox.Show("请输入药品数量", "系统提示");      }    }}


[解决办法]
一次检查
dataGridView1.Rows[1]
dataGridView1.Rows[1].Cells["MedicineNum"]
dataGridView1.Rows[1].Cells["MedicineNum"].Value
是否为空

热点排行