public bool Remove(RadListDataItem item) { this.OwnerListElement.CheckReadyForUnboundMode(); if (item == null) { return(false); //fix null ref. exception } Telerik.WinControls.Data.NotifyCollectionChangingEventArgs args = new Telerik.WinControls.Data.NotifyCollectionChangingEventArgs(Telerik.WinControls.Data.NotifyCollectionChangedAction.Remove, item); this.ownerListElement.OnItemsChanging(args); if (args.Cancel) { return(false); } item.DataLayer = null; item.Owner = null; bool removeValue = this.dataLayer.ListSource.Remove(item); Telerik.WinControls.Data.NotifyCollectionChangedEventArgs args1 = new Telerik.WinControls.Data.NotifyCollectionChangedEventArgs(Telerik.WinControls.Data.NotifyCollectionChangedAction.Remove, item); this.ownerListElement.OnItemsChanged(args1); return(removeValue); }
public void Add(RadListDataItem item) { this.OwnerListElement.CheckReadyForUnboundMode(); item.DataLayer = this.dataLayer; item.Owner = this.ownerListElement; Telerik.WinControls.Data.NotifyCollectionChangingEventArgs args = new Telerik.WinControls.Data.NotifyCollectionChangingEventArgs(Telerik.WinControls.Data.NotifyCollectionChangedAction.Add, item); this.ownerListElement.OnItemsChanging(args); if (args.Cancel) { return; } if (this.dataLayer.ListSource.IsDataBound) { RadListDataItem newItem = this.dataLayer.ListSource.AddNew(); newItem.Text = item.Text; } else { this.dataLayer.ListSource.Add(item); } Telerik.WinControls.Data.NotifyCollectionChangedEventArgs args1 = new Telerik.WinControls.Data.NotifyCollectionChangedEventArgs(Telerik.WinControls.Data.NotifyCollectionChangedAction.Add, item); this.ownerListElement.OnItemsChanged(args1); }
public RadListDataItem this[int index] { get { return(this.dataLayer.DataView[index]); } set { this.OwnerListElement.CheckReadyForUnboundMode(); RadListDataItem item = this.dataLayer.ListSource[index]; Telerik.WinControls.Data.NotifyCollectionChangingEventArgs args = new Telerik.WinControls.Data.NotifyCollectionChangingEventArgs(Telerik.WinControls.Data.NotifyCollectionChangedAction.Replace, value, item); this.ownerListElement.OnItemsChanging(args); if (args.Cancel) { return; } item.DataLayer = null; item.Owner = null; if (item.Selected) { ((IList)this.ownerListElement.SelectedItems).Remove(item); } this.dataLayer.ListSource[index] = value; value.DataLayer = this.dataLayer; value.Owner = this.ownerListElement; Telerik.WinControls.Data.NotifyCollectionChangedEventArgs args1 = new Telerik.WinControls.Data.NotifyCollectionChangedEventArgs(Telerik.WinControls.Data.NotifyCollectionChangedAction.Replace, value, item); this.ownerListElement.OnItemsChanged(args1); } }
public void RemoveAt(int index) { this.OwnerListElement.CheckReadyForUnboundMode(); RadListDataItem itemToRemove = this.dataLayer.DataView[index]; Telerik.WinControls.Data.NotifyCollectionChangingEventArgs args = new Telerik.WinControls.Data.NotifyCollectionChangingEventArgs(Telerik.WinControls.Data.NotifyCollectionChangedAction.Remove, itemToRemove); this.ownerListElement.OnItemsChanging(args); if (args.Cancel) { return; } itemToRemove.DataLayer = null; itemToRemove.Owner = null; this.dataLayer.ListSource.RemoveAt(index); Telerik.WinControls.Data.NotifyCollectionChangedEventArgs args1 = new Telerik.WinControls.Data.NotifyCollectionChangedEventArgs(Telerik.WinControls.Data.NotifyCollectionChangedAction.Remove, itemToRemove); this.ownerListElement.OnItemsChanged(args1); }
public void Insert(int index, RadListDataItem item) { this.OwnerListElement.CheckReadyForUnboundMode(); item.DataLayer = this.dataLayer; item.Owner = this.ownerListElement; Telerik.WinControls.Data.NotifyCollectionChangingEventArgs args = new Telerik.WinControls.Data.NotifyCollectionChangingEventArgs(Telerik.WinControls.Data.NotifyCollectionChangedAction.Add, item); this.ownerListElement.OnItemsChanging(args); if (args.Cancel) { return; } Telerik.WinControls.Data.NotifyCollectionChangedEventArgs args1 = new Telerik.WinControls.Data.NotifyCollectionChangedEventArgs(Telerik.WinControls.Data.NotifyCollectionChangedAction.Add, item); this.dataLayer.ListSource.Insert(index, item); this.ownerListElement.OnItemsChanged(args1); }
public void AddRange(IEnumerable <RadListDataItem> range) { this.OwnerListElement.CheckReadyForUnboundMode(); List <RadListDataItem> items = new List <RadListDataItem>(range); Telerik.WinControls.Data.NotifyCollectionChangingEventArgs args = new Telerik.WinControls.Data.NotifyCollectionChangingEventArgs(Telerik.WinControls.Data.NotifyCollectionChangedAction.Batch, items); this.ownerListElement.OnItemsChanging(args); if (args.Cancel) { return; } this.ownerListElement.SuspendItemsChangeEvents = true; foreach (RadListDataItem item in range) { this.Add(item); } this.ownerListElement.SuspendItemsChangeEvents = false; Telerik.WinControls.Data.NotifyCollectionChangedEventArgs args1 = new Telerik.WinControls.Data.NotifyCollectionChangedEventArgs(Telerik.WinControls.Data.NotifyCollectionChangedAction.Batch, items); this.ownerListElement.OnItemsChanged(args1); }