从bindingNavigator获取已删除的记录

时间:2014-07-15 14:59:08

标签: c# winforms bindingsource bindingnavigator

使用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;

1 个答案:

答案 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();
    }