Example #1
0
        public object AddNew()
        {
            if (AllowNew == false)
            {
                throw new NotSupportedException();
            }

            EndNew();

            object o = TypeAccessor.CreateInstanceEx(_itemType);

            _newObject = o as INotifyObjectEdit;

            if (_newObject != null)
            {
                _newObject.ObjectEdit += NewObject_ObjectEdit;
            }

            _newItemIndex = _list.Add(o);
            OnAddItem(o, _newItemIndex);

            Debug.WriteLine(string.Format("AddNew - ({0})", o.GetType().Name));

            return(o);
        }
Example #2
0
        public void EndNew()
        {
            _newItemIndex = -1;

            if (_newObject != null)
            {
                _newObject.ObjectEdit -= NewObject_ObjectEdit;
            }

            _newObject = null;
        }
Example #3
0
		public object AddNew()
		{
			if (AllowNew == false)
				throw new NotSupportedException();

			EndNew();

			object o = TypeAccessor.CreateInstanceEx(_itemType);

			_newItemIndex = _list.Add(o);
			_newObject    = o as INotifyObjectEdit;

			if (_newObject != null)
				_newObject.ObjectEdit += NewObject_ObjectEdit;

			Debug.WriteLine(string.Format("AddNew - ({0})", o.GetType().Name));

			return o;
		}
Example #4
0
        public object AddNew()
        {
            if (AllowNew == false)
            {
                throw new NotSupportedException();
            }

            EndNew();
// BVChanges: adding creator
            object o = null;

            if (_creator != null)
            {
                o = _creator();
            }
            if (o == null)
            {
                o = TypeAccessor.CreateInstanceEx(_itemType);
            }
// BVChanges: adding creator
            _newObject = o as INotifyObjectEdit;

            if (_newObject != null)
            {
                _newObject.ObjectEdit += NewObject_ObjectEdit;
            }

            _newItemIndex = _list.Add(o);

// BVChanges: adding creator
            if (o is INotifyPropertyChanged)
            {
                ((INotifyPropertyChanged)o).PropertyChanged +=
                    ItemPropertyChanged;
            }
// BVChanges: adding creator

            OnAddItem(o, _newItemIndex);

            Debug.WriteLine(string.Format("AddNew - ({0})", o.GetType().Name));

            return(o);
        }
Example #5
0
		public void EndNew()
		{
			_newItemIndex = -1;

			if (_newObject != null)
				_newObject.ObjectEdit -= NewObject_ObjectEdit;

			_newObject = null;
		}