使用C#Winforms,我有一个带有BindingNavigator的表单。 当用户单击删除按钮时,我想在记录被删除之前记录该记录。
很容易判断使用
点击了删除private void bindingSource_ListChanged(object sender, ListChangedEventArgs e)
{
if (e.ListChangedType == ListChangedType.ItemDeleted)
{
}
}
但是BindingSource.ListChanged是一个在行之后触发的已完成事件 删除完成。触发此事件时,该行已被删除,以便如何捕获它?
我绑定到一个对象列表。
this.bindingSource.DataSource = Controller.Data; // returning a List<Person>()
this.bindingNavigator.BindingSource = this.bindingSource;
答案 0 :(得分:0)
bindingNavigator有一个名为bindingNavigatorDeleteItem的ToolStripItem bindingNavigator的DeleteItem属性已设置为此ToolStripItem。 相反,我把它设置为无。 然后设置bindingNavigatorDeleteItem ToolStripItem的Click事件
this.bindingNavigatorDeleteItem.Click += this.bindingNavigatorDeleteItem_Click;
private void bindingNavigatorDeleteItem_Click(object sender, EventArgs e)
{
this.bindingSource.EndEdit();
MyLogger( this.bindingSource.Current);
this.bindingSource.RemoveCurrent();
}