DataGridView控件之多行数据的选中与删除功能
DataGridView控件之多行数据的选中与删除步骤:
(1)创建Windows窗体程序,并在窗体上防止一个dataGridView控件名字为dataGridView1,两个按钮控件(ADD和Delete),名字分别为AddBtn、DeleteBtn。
(2)在窗体的加载程序中,设置dataGridView1控件的属性,代码如下:
/// /// 窗体加载的事件处理函数/// /// /// private void Form1_Load(object sender, EventArgs e){//设置控件选中选中的模式//单击单元格或行标题可以选中整行this.dataGridView1.SelectionMode = DataGridViewSelectionMode.FullRowSelect;//单击单元格或列标题可以选中整列//this.dataGridView1.SelectionMode = DataGridViewSelectionMode.FullColumnSelect;//选中单个或多个单元格//this.dataGridView1.SelectionMode = DataGridViewSelectionMode.CellSelect;//不允许用户调整列的排列顺序this.dataGridView1.AllowUserToOrderColumns = false;//不允许用户调整列的大小this.dataGridView1.AllowUserToResizeColumns = false;//不允许用户调整行的大小this.dataGridView1.AllowUserToResizeRows = false;}(3) AddBtn按钮的单击事件中实现为dataGridView控件静态添加行数据的功能,具体代码如下:
/// /// 按钮单击事件处理函数/// /// /// private void AddBtn_Click(object sender, EventArgs e){for (int i = 0; i < 10; i++){//添加新的一行this.dataGridView1.Rows.Add();//此操作添加的行为非共享行dataGridView1.Rows[i].Cells[0].Value = (i + 1).ToString();dataGridView1.Rows[i].Cells[1].Value = (i + 5).ToString();dataGridView1.Rows[i].Cells[2].Value = (i + 10).ToString();dataGridView1.Rows[i].Cells[3].Value = (i + 1).ToString();}}
(4)DeleteBtn按钮的单击事件中实现删除dataGridView1控件中选中行的数据的功能,具体代码如下:
/// /// 按钮单击事件处理函数/// /// /// private void DeleteBtn_Click(object sender, EventArgs e){try{//选中的行数int iCount = dataGridView1.SelectedRows.Count;if (iCount < 1){MessageBox.Show("Delete Data Fail!", "Error", MessageBoxButtons.OK,MessageBoxIcon.Error);return;}if (DialogResult.Yes == MessageBox.Show("是否删除选中的数据?", "提示", MessageBoxButtons.YesNo, MessageBoxIcon.Information)){for (int i = 0; i < this.dataGridView1.Rows.Count-1; i++) //循环遍历所有行{
if(true==this.dataGridView1.Rows[i].Selected)//当前行处于选中状态,则将其删除 this.dataGridView1.Rows.RemoveAt(i);}//删除任意行数据后,应该刷新dataGridView表格,使索引值从上至下按大小顺序排序for (int i = 0; i < dataGridView1.Rows.Count - 1; i++){dataGridView1.Rows[i].Cells[0].Value = i + 1;}} }catch (Exception ex){MessageBox.Show(ex.Message);}}
注意:由于将dataGridView控件的SelectMode属性设置为DataGridViewSelectionMode.FullRowSlect属性,所以在单击dataGridView控件时无论是单击单元格还是单击行标题都会选中改行。如果想实现单击某个单元格只选中该单元格可以设置SelectMode属性值为DataGridViewSelectMode.CellSelect。同理如果要实现单击单元格选中一列的功能可以设置SelectMode属性值为DataGridViewSelectMode.FullColumnSelect.
本文来自互联网用户投稿,文章观点仅代表作者本人,不代表本站立场,不承担相关法律责任。如若转载,请注明出处。 如若内容造成侵权/违法违规/事实不符,请点击【内容举报】进行投诉反馈!
