private void Form1_Load(object sender, EventArgs e) { DataList list = new DataList(); list.Add(new DataEdit(1, "Rocky")); list.Add(new DataEdit(2, "Fred")); list.Add(new DataEdit(3, "Mary")); list.Add(new DataEdit(4, "George")); list.BeginEdit(); this.dataListBindingSource.DataSource = list; this.dataListBindingSource.ListChanged += new ListChangedEventHandler(dataListBindingSource_ListChanged); }
private void toolStripButton2_Click(object sender, EventArgs e) { // this is the wrong way to perform a cancel / undo operation // and an "Edit level mismatch in CopyState" exception will be thrown DataList list = (DataList)this.dataListBindingSource.DataSource; this.dataListBindingSource.CancelEdit(); list.CancelEdit(); list.BeginEdit(); }
private void cancelButton_Click(object sender, EventArgs e) { // get business object reference DataList list = (DataList)this.dataListBindingSource.DataSource; // cancel current row this.dataListBindingSource.CancelEdit(); // unbind the UI UnbindBindingSource(this.dataListBindingSource); // cancel the list and restart editing list.CancelEdit(); list.BeginEdit(); // rebind the UI this.dataListBindingSource.DataSource = list; }