C# bindingnavigatro删除事件修改&&遍历指定容器的控件
bindingnavigatro自带的事件,不能修改,如果想在删除前加入提醒,需要做以下改变:
1、 在bindingnavigatro图标上点右键,选 编辑项
2、删除系统默认带的DeleteItem项目,选为空即可
3、在控件的Click事件中重写代码,可以加入删除提示。。。。
//导航栏的删除事件,重写;首先要在bindingNavigator属性中,删除DeleteItem方法
private void bindingNavigatorDeleteItem_Click(object sender, EventArgs e)
{
if (MessageBox.Show("确认删除吗?", "删除前确认", MessageBoxButtons.OKCancel) == DialogResult.OK)
{
dtList.Rows[bindingNavigator1.BindingSource.Position].Delete();
}
}
参考链接:“BindingNavigator”如何在删除前弹出确认框? - Serviceboy - 博客园 (cnblogs.com)
删除按钮的代码是如下:(dtList 是你的DataTable变量名)
dtList.Rows[bindingNavigator1.BindingSource.Position].Delete();
Add 按钮的代码是下面这两句:
this.bindingNavigator1.BindingSource.AddNew(); this.bindingNavigator1.BindingSource.MoveLast();
附:可以清除*Box控件的值
1 //获取指定容器控件,控制字段编辑或修改 2 private void ClearBox() 3 { 4 5 foreach (Control c in this.groupBox1.Controls) 6 { 7 if (c.GetType().ToString().Contains("TextBox")) 8 { 9 ((TextBox)c).Text = ""; 10 MessageBox.Show(c.GetType().ToString()); 11 } 12 if (c.GetType().ToString().Contains("ComboBox")) 13 { 14 ((ComboBox)c).Text = ""; 15 } 16 if (c.GetType().ToString().Contains("CheckBox")) 17 { 18 ((CheckBox)c).Checked = false; 19 } 20 }
活到老,学到老。