//------------------------------------------------------------------------------------- /// protected override void AsyncTaskDoneBody(AsyncTask task) { #region Persons if(task.TaskName == "Persons") { _pers = (Persons)task.Result; ListBinder b = new ListBinder(_list = new PList<ISubject>(_pers)); b.CacheSort = false; b.Sort(Sort); fdgvList.DataSource = b; } #endregion Persons #region Save if(task.TaskName == "Save") { ISubject s = (ISubject)task.Tag; if(_pers.Contains(s) == false) _pers.Add((Person)s); else Pulsar.Serialization.PulsarSerializer.Deserialize(Pulsar.Serialization.PulsarSerializer.Backup(s), _pers[s.OID]); Modify = false; } #endregion Save #region Remove if(task.TaskName == "Remove") { _pers.Remove((Person)task.Tag); _list.Remove((ISubject)task.Tag); } #endregion Remove }
//------------------------------------------------------------------------------------- /// <summary> /// Инициализирующий конструктор. /// </summary> /// <param name="items">Отображаемые элементы.</param> /// <param name="checkedItems">Выбраные элементы</param> public SimCheckList(IEnumerable items, IEnumerable checkedItems) : this() { if (items == null) throw new ArgumentNullException("items"); list = new PList<ValuesPair<bool, object>>(); foreach (var x in items) { ValuesPair<bool, object> i = new ValuesPair<bool, object>(false, x); i.Value1 = checkedItems != null && checkedItems.Contains(x); list.Add(i); } ListBinder b = new ListBinder(list); fdgv.DataSource = b; }
//------------------------------------------------------------------------------------- /// <summary> /// Инициализирующий конструктор. /// </summary> /// <param name="list">Отображаемый список.</param> public SimSelectList(IList list) : this() { ListBinder b = new ListBinder(list); fdgv.DataSource = b; }