예제 #1
0
		//-------------------------------------------------------------------------------------
		///
		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
		}
예제 #2
0
		//-------------------------------------------------------------------------------------
		/// <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;
		}
예제 #3
0
		//-------------------------------------------------------------------------------------
		/// <summary>
		/// Инициализирующий конструктор.
		/// </summary>
		/// <param name="list">Отображаемый список.</param>
		public SimSelectList(IList list) : this()
		{
			ListBinder b = new ListBinder(list);
			fdgv.DataSource = b;
		}