DataGridView的列编辑:
Name:用于调用属性的时候用的,也可以不使用Name去调用,选择数字1,2,3...选择第1列,第2列,第3列。
HeaderText:表头显示的名字方便用户使用。
DataPropertyName:该列与绑定的表的哪个属性对应。一般情况编辑的列与绑定的表属性名一一对应。
单击事件:click。
双击事件:doubleclick。
获取当前所在行并获取当前行某一列:
int RowIndex = goodsdataGridView.CurrentCell.RowIndex; //获取当前第几行
goodsdataGridView.Rows[RowIndex].Cells[0].Value.ToString(); //cell[0]表示第0列,
可以用数字表示,但可能会乱序,最好在列编辑中给列的Name属性赋值如取叫ID,然后用这个名
字引用如goodsdataGridView.Rows[RowIndex].Cells["ID"].Value.ToString();
DataTable:
创建一张表: DataTable goodslist = new DataTable();
为这张表添加列名(属性名):goodslist.Columns.Add("name1");
为这张表添加数据:DataRow dr = goodslist.NewRow(); dr["name1"] = "name";
将这张表绑定到DataGridView: dataGridView1.DataSourse=goodslist;
如果这张表的属性名和DataGridView的列名相同的话,会自动匹配到已编辑的列,否则会创新列出来,表头的名字和列名一样。
DataSet:
将DataTable放入DataSet: goodslist.TableName="table1"; DataSet ds=new DataSet(); ds.Table.Add(goodslist.copy());
将DataTable从DatatSet中取出:DataTable dt = ds.Tables["table1"];
DataRow:
判断一张DataTable里面每一行的状态(修改,删除,新增):
foreach (DataRow datarow in dataset.Tables["master"].Rows) { switch (datarow.RowState) { case DataRowState.Modified: { if (datarow[1, DataRowVersion.Current] != datarow[1, DataRowVersion.Original]) { } break; } case DataRowState.Added: { break; } case DataRowState.Deleted: { break; } }