/// <summary> /// Añade/pone foco en la Tab correspondiente según el param recibido desde el xaml, del cual se recupera su EOpcion /// </summary> /// <param name="parameter"></param> public void MostrarAuxiliares(object parameter) { EOpcion opcion = ribbonbuttondictionary.Where(z => z.Key.ToString() == parameter.ToString()).FirstOrDefault().Key; //Si el param no se encuentra en la Enum EOpcion, no hace nada, sino mostraría //la Tab correspondiente al primer valor de la Enum EOpcion if (opcion.ToString() == parameter.ToString()) { MaestrosAuxiliaresLogic.PrepareTabItemDataGrid(opcion); } }
/// <summary> /// Devuelve un nuevo TabItem según el tipo de auxiliar que recibe por param. Se le añade el Header, Name, Focus. /// Se añade el nuevo TabItem al TabControl. /// Se añade el Resource "ResourceLanguage" para que pueda cambiar el idioma del Header del TabItem. /// </summary> /// <param name="opcion"></param> /// <returns></returns> public static TabItem CreateTabItemDataGrid(EOpcion opcion) { TabItemUserControl tbitem = new TabItemUserControl(); var binding = new Binding(); binding.Path = new PropertyPath(ribbonbuttondictionary.Where(z => z.Key == opcion).FirstOrDefault().Value.propertiesresources); binding.Source = (ObjectDataProvider)App.Current.FindResource("ResourceLanguage"); tbitem.SetBinding(TabItem.HeaderProperty, binding); tbitem.Name = opcion.ToString(); tbitem.HeaderTemplate = tbitem.FindResource("TabHeader") as DataTemplate; //Se añade el nuevo TabItem al TabControl, le ponemos el focus y devolvemos el nuevo TabItem ((MainWindow)Application.Current.MainWindow).tbControl.Items.Add(tbitem); tbitem.Focus(); return(tbitem); }