Beispiel #1
0
 //
 private void CustomNewActionController_CustomAddObjectToCollection(object sender, ProcessNewObjectEventArgs e)
 {
 }
        private void CustomNewActionController_CustomAddObjectToCollection(object sender, ProcessNewObjectEventArgs e)
        {
            //if (true) {
            //}

            //if (false) {
            //    // Созданный в методе CustomNewActionController_ObjectCreating объект передаётся в этот метод параметром
            //    // и можно включить его в коллекцию объектов его типа своими силами

            //    Frame frame = Frame;
            //    View view = frame.View;

            //    // Добавление своими силами

            //    // Отключаем стандартный способ
            //    e.Handled = true;

            //    //e.NewObject = newedObject;
            //    //e.CurrentCollectionSource = new CollectionSource(e.ObjectSpace, newedObject.GetType());

            //    //DevExpress.XtraEditors.XtraMessageBox.Show("Начальное количество объектов (e.ObjectSpace): " + e.ObjectSpace.GetObjectsCount(e.NewObject.GetType(), null).ToString());
            //    //DevExpress.XtraEditors.XtraMessageBox.Show("Начальное количество объектов (view.ObjectSpace): " + view.ObjectSpace.GetObjectsCount(e.NewObject.GetType(), null).ToString());

            //    // e.ObjectSpace и view.ObjectSpace - разные

            //    IObjectSpace nestedObjectSpace = view.ObjectSpace.CreateNestedObjectSpace();

            //    object newObj = nestedObjectSpace.GetObject(e.NewObject);
            //    e.CurrentCollectionSource.Add(newObj);

            //    //e.ObjectSpace.GetObjectsCount(e.NewObject.GetType(), null);

            //    e.ObjectSpace.GetObject(newObj);

            //    //DevExpress.XtraEditors.XtraMessageBox.Show("Количество объектов после добавления (e.ObjectSpace): " + e.ObjectSpace.GetObjectsCount(e.NewObject.GetType(), null).ToString());
            //    //DevExpress.XtraEditors.XtraMessageBox.Show("Количество объектов после добавления (view.ObjectSpace): " + view.ObjectSpace.GetObjectsCount(e.NewObject.GetType(), null).ToString());
            //    //DevExpress.XtraEditors.XtraMessageBox.Show("Количество объектов для сохранения (e.ObjectSpace): " + e.ObjectSpace.GetObjectsToSave(false).Count.ToString());
            //}
        }