/// <summary> /// Реагирует на нажатие кнопки добавления нового элемента /// </summary> /// <param name="sender"></param> /// <param name="e"></param> protected virtual void ButtonAddDisplayerRequested(object sender, ReferenceEventArgs e) { try { Form form; if (ViewedType.Name == nameof(AircraftWorkerCategory)) { form = new AircraftWorkerCategoryForm(new AircraftWorkerCategory()); } //else if (ViewedType.Name == typeof(DetailModel).Name || ViewedType.Name == typeof(AircraftModel).Name) //{ // ConstructorInfo ci = ViewedType.GetConstructor(new Type[0]); // BaseEntityObject item = (BaseEntityObject)ci.Invoke(null); // form = new CommonEditorForm(item); //} else if (ViewedType.Name == nameof(Product)) { form = new ProductForm(new Product()); } else if (ViewedType.Name == nameof(ComponentModel)) { form = new ModelForm(new ComponentModel()); } else if (ViewedType.Name == nameof(GoodStandart)) { form = new GoodStandardForm(new GoodStandart()); } else { ConstructorInfo ci = ViewedType.GetConstructor(new Type[0]); BaseEntityObject item = (BaseEntityObject)ci.Invoke(null); form = new CommonEditorForm(item); } if (form.ShowDialog(this) == DialogResult.OK) { AnimatedThreadWorker.DoWork -= AnimatedThreadWorkerDoWork; AnimatedThreadWorker.DoWork -= AnimatedThreadWorkerDoFilteringWork; AnimatedThreadWorker.DoWork += AnimatedThreadWorkerDoWork; AnimatedThreadWorker.RunWorkerAsync(); } } catch (Exception ex) { Program.Provider.Logger.Log("Error while building new object", ex); } }
protected virtual void ItemsListViewMouseDoubleClick(object sender, MouseEventArgs e) { if (SelectedItem == null) { return; } DisplayerAttribute da = (DisplayerAttribute)_viewedType.GetCustomAttributes(typeof(DisplayerAttribute), false) .FirstOrDefault(); if (da == null || da.DisplayerType == DisplayerType.Form) { Form form; if (SelectedItem is AircraftWorkerCategory) { form = new AircraftWorkerCategoryForm((AircraftWorkerCategory)SelectedItem); } else if (SelectedItem is AccessoryDescription) { form = new AccessoryDescriptionForm((AccessoryDescription)SelectedItem); } else if (SelectedItem is AccessoryRequired) { form = new KitForm((AccessoryRequired)SelectedItem); } else { form = new CommonEditorForm(SelectedItem); } if (form.ShowDialog() == DialogResult.OK) { itemsListView.Items[itemsListView.Items.IndexOf(itemsListView.SelectedItems[0])] = new ListViewItem(GetListViewSubItems(SelectedItem), null) { Tag = SelectedItem }; } } else if (da.DisplayerType == DisplayerType.Screen) { OnDisplayerRequested(); } }
private void ButtonAddClick(object sender, EventArgs e) { try { Form form; switch (ViewedType.Name) { case nameof(AircraftWorkerCategory): form = new AircraftWorkerCategoryForm(new AircraftWorkerCategory()); break; case nameof(Product): form = new ProductForm(new Product()); break; case nameof(AccessoryRequired): form = new KitForm(new AccessoryRequired()); break; default: { var ci = ViewedType.GetConstructor(Type.EmptyTypes); var item = (BaseEntityObject)ci.Invoke(null); form = new CommonEditorForm(item); break; } } if (form.ShowDialog() == DialogResult.OK) { itemsListView.Items[itemsListView.Items.IndexOf(itemsListView.SelectedItems[0])] = new ListViewItem(GetListViewSubItems(SelectedItem), null) { Tag = SelectedItem }; } } catch (Exception ex) { Program.Provider.Logger.Log("Error while building new object", ex); return; } }
private void ButtonAddClick(object sender, EventArgs e) { try { Form form; if (ViewedType.Name == typeof(AircraftWorkerCategory).Name) { form = new AircraftWorkerCategoryForm(new AircraftWorkerCategory()); } else if (ViewedType.Name == typeof(AccessoryDescription).Name) { form = new AccessoryDescriptionForm(new AccessoryDescription()); } else if (ViewedType.Name == typeof(AccessoryRequired).Name) { form = new KitForm(new AccessoryRequired()); } else { ConstructorInfo ci = ViewedType.GetConstructor(new Type[0]); BaseEntityObject item = (BaseEntityObject)ci.Invoke(null); form = new CommonEditorForm(item); } if (form.ShowDialog() == DialogResult.OK) { itemsListView.Items[itemsListView.Items.IndexOf(itemsListView.SelectedItems[0])] = new ListViewItem(GetListViewSubItems(SelectedItem), null) { Tag = SelectedItem }; } } catch (Exception ex) { Program.Provider.Logger.Log("Error while building new object", ex); return; } }