/// <summary> /// Método invocado cuando el botón extra es elegido en el administrador. /// </summary> /// <param name="sender"> /// El objeto que genera el evento. /// </param> /// <param name="e"> /// Un objeto que contiene información acerca del evento. /// </param> protected override void OnExtraSelected(object sender, EventArgs e) { CategoryEditor addCategory = (CategoryEditor)Editor; addCategory.IsRootCategory = true; addCategory.ParentCategory = null; addCategory.Mode = EditionMode.Add; Control.HideLastShown(); addCategory.Visibility = Visibility.Visible; Control.LastElementShown = addCategory; addCategory.FocusFirst(); }
/// <summary> /// Método invocado cuando el nuevo botón se selecciona en el administrador. /// </summary> /// <param name="sender"> /// El objeto que genera el evento. /// </param> /// <param name="e"> /// Un objeto que contiene información acerca del evento. /// </param> protected override void OnNewSelected(object sender, EventArgs e) { CategoryEditor addCategory = (CategoryEditor)Editor; addCategory.IsRootCategory = false; addCategory.ParentCategory = (CategoryEntity)Selected; Mode = EditionMode.Add; Control.HideLastShown(); addCategory.Visibility = Visibility.Visible; Control.LastElementShown = addCategory; addCategory.Clear(); addCategory.FocusFirst(); }
/// <summary> /// Constructor de clase. /// </summary> /// <param name="control">Una referencia al control que contiene el componente.</param> /// <param name="manager">El componente que muestra la lista de entidades.</param> /// <param name="editor">El componente que permite agregar o editar una entidad.</param> /// <param name="firstElement">El componente que debe enfocarse al mostrarse el editor.</param> public CategoryController(UserControl1 control, CategoryManager manager, CategoryEditor editor, FrameworkElement firstElement) : base(control, manager, editor, firstElement, new LoadList(CategoryManager.Load), new SaveEntity(CategoryManager.Save), new RemoveEntity(CategoryManager.Delete)) { CategoryManager categoryManager = (CategoryManager)manager; CategoryEditor addCategory = (CategoryEditor)editor; addCategory.OkSelected += OnOkSelected; addCategory.CancelSelected += OnCancelSelected; categoryManager.Tree.NewButtonSelected += OnNewSelected; categoryManager.Tree.EditButtonSelected += OnEditSelected; categoryManager.Tree.DeleteButtonSelected += OnDeleteSelected; categoryManager.Tree.ExtraButtonSelected += OnExtraSelected; }
/// <summary> /// Método invocado cuando el botón Aceptar es elegido en el editor. /// </summary> /// <param name="sender"> /// El objeto que genera el evento. /// </param> /// <param name="e"> /// Un objeto que contiene información acerca del evento. /// </param> protected override void OnOkSelected(object sender, EventArgs e) { CategoryEditor addCategory = (CategoryEditor)Editor; Control.HideLastShown(); Manager.Visibility = Visibility.Visible; Control.LastElementShown = Manager; if (addCategory.Mode == EditionMode.Add) { addCategory.Category.ParentCategory = addCategory.ParentCategory; if (addCategory.ParentCategory != null) { addCategory.ParentCategory.Childs.Add(addCategory.Category); } } Save(addCategory.Category); }