// Updates keys for keytip access private static void DefaultUpdateKeyTips(QuickAccessToolBar quickAccessToolBar) { for (var i = 0; i < Math.Min(9, quickAccessToolBar.Items.Count); i++) { // 1, 2, 3, ... , 9 KeyTip.SetKeys(quickAccessToolBar.Items[i], (i + 1).ToString(CultureInfo.InvariantCulture)); } for (var i = 9; i < Math.Min(18, quickAccessToolBar.Items.Count); i++) { // 09, 08, 07, ... , 01 KeyTip.SetKeys(quickAccessToolBar.Items[i], "0" + (18 - i).ToString(CultureInfo.InvariantCulture)); } var startChar = 'A'; for (var i = 18; i < Math.Min(9 + 9 + 26, quickAccessToolBar.Items.Count); i++) { // 0A, 0B, 0C, ... , 0Z KeyTip.SetKeys(quickAccessToolBar.Items[i], "0" + startChar++); } }
public override void OnApplyTemplate() { if (layoutRoot != null) RemoveLogicalChild(layoutRoot); layoutRoot = GetTemplateChild("PART_LayoutRoot") as Panel; if (layoutRoot != null) AddLogicalChild(layoutRoot); if ((this.TitleBar != null) && (groups != null)) { for (int i = 0; i < groups.Count; i++) { this.TitleBar.Items.Remove(groups[i]); } } this.TitleBar = GetTemplateChild("PART_RibbonTitleBar") as RibbonTitleBar; if ((this.TitleBar != null) && (groups != null)) { for (int i = 0; i < groups.Count; i++) { this.TitleBar.Items.Add(groups[i]); } } RibbonTabItem selectedTab = SelectedTabItem; if (TabControl != null) { TabControl.SelectionChanged -= OnTabControlSelectionChanged; selectedTab = TabControl.SelectedItem as RibbonTabItem; } if ((TabControl != null) && (tabs != null)) { for (int i = 0; i < tabs.Count; i++) { TabControl.Items.Remove(tabs[i]); } } if ((TabControl != null) && (toolBarItems != null)) { for (int i = 0; i < toolBarItems.Count; i++) { TabControl.ToolBarItems.Remove(toolBarItems[i]); } } TabControl = GetTemplateChild("PART_RibbonTabControl") as RibbonTabControl; if (TabControl != null) { TabControl.SelectionChanged += OnTabControlSelectionChanged; TabControl.IsMinimized = this.IsMinimized; TabControl.ContentGapHeight = this.ContentGapHeight; TabControl.SetBinding(RibbonTabControl.IsMinimizedProperty, new Binding("IsMinimized") { Source = this, Mode = BindingMode.TwoWay }); TabControl.SetBinding(RibbonTabControl.ContentGapHeightProperty, new Binding("ContentGapHeight") { Source = this, Mode = BindingMode.OneWay }); } if ((TabControl != null) && (tabs != null)) { for (int i = 0; i < tabs.Count; i++) { TabControl.Items.Add(tabs[i]); } TabControl.SelectedItem = selectedTab; if (TabControl.SelectedItem == null) { //bool isBacstageOpen = IsBackstageOpen; //tabControl.SelectedIndex = selectedTabIndex >= 0 ? selectedTabIndex : 0; //IsBackstageOpen = isBacstageOpen; } } if ((TabControl != null) && (toolBarItems != null)) { for (int i = 0; i < toolBarItems.Count; i++) { TabControl.ToolBarItems.Add(toolBarItems[i]); } } if (quickAccessToolBar != null) { this.quickAccessStream = new MemoryStream(); if (!this.AutomaticStateManagement || this.IsStateLoaded) { this.SaveState(this.quickAccessStream); } this.ClearQuickAccessToolBar(); } if (quickAccessToolBar != null) { quickAccessToolBar.ItemsChanged -= OnQuickAccessItemsChanged; if (quickAccessItems != null) { for (int i = 0; i < quickAccessItems.Count; i++) { quickAccessToolBar.QuickAccessItems.Remove(quickAccessItems[i]); } } } quickAccessToolBar = GetTemplateChild("PART_QuickAccessToolBar") as QuickAccessToolBar; if (quickAccessToolBar != null) { if (quickAccessItems != null) { for (int i = 0; i < quickAccessItems.Count; i++) { quickAccessToolBar.QuickAccessItems.Add(quickAccessItems[i]); } } quickAccessToolBar.ItemsChanged += OnQuickAccessItemsChanged; var binding = new Binding("CanQuickAccessLocationChanging") { Source = this, Mode = BindingMode.OneWay }; quickAccessToolBar.SetBinding(Fluent.QuickAccessToolBar.CanQuickAccessLocationChangingProperty, binding); //quickAccessToolBar.SizeChanged += OnQATSizeChanged; } if (quickAccessToolBar != null) { if (quickAccessToolBar.Parent == null) AddLogicalChild(quickAccessToolBar); quickAccessToolBar.Loaded += OnFirstToolbarLoaded; } /*if (backstageButton != null) { if (backstageItems != null) { for (int i = 0; i < backstageItems.Count; i++) { //backstageButton.Backstage.Items.Remove(backstageItems[i]); } } } backstageButton = GetTemplateChild("PART_BackstageButton") as Backstage; adorner = null; if (backstageButton != null) { Binding binding = new Binding("IsBackstageOpen"); binding.Mode = BindingMode.TwoWay; binding.Source = this; backstageButton.SetBinding(Backstage.IsOpenProperty, binding); if (backstageItems != null) { for (int i = 0; i < backstageItems.Count; i++) { //backstageButton.Backstage.Items.Add(backstageItems[i]); } } }*/ }
public override void OnApplyTemplate() { if (this.layoutRoot != null) { this.RemoveLogicalChild(this.layoutRoot); } this.layoutRoot = this.GetTemplateChild("PART_LayoutRoot") as Panel; if (this.layoutRoot != null) { this.AddLogicalChild(this.layoutRoot); } if (this.TitleBar != null) { foreach (var ribbonContextualTabGroup in this.ContextualGroups) { this.TitleBar.Items.Remove(ribbonContextualTabGroup); } // Make sure everything is cleared this.TitleBar.Items.Clear(); } this.TitleBar = this.GetTemplateChild("PART_RibbonTitleBar") as RibbonTitleBar; if (this.TitleBar != null) { foreach (var contextualTabGroup in this.ContextualGroups) { this.TitleBar.Items.Add(contextualTabGroup); } } var selectedTab = this.SelectedTabItem; if (this.TabControl != null) { this.TabControl.SelectionChanged -= this.OnTabControlSelectionChanged; selectedTab = this.TabControl.SelectedItem as RibbonTabItem; foreach (var ribbonTabItem in this.Tabs) { this.TabControl.Items.Remove(ribbonTabItem); } // Make sure everything is cleared this.TabControl.Items.Clear(); foreach (var toolBarItem in this.ToolBarItems) { this.TabControl.ToolBarItems.Remove(toolBarItem); } // Make sure everything is cleared this.TabControl.ToolBarItems.Clear(); } this.TabControl = this.GetTemplateChild("PART_RibbonTabControl") as RibbonTabControl; if (this.TabControl != null) { this.TabControl.SelectionChanged += this.OnTabControlSelectionChanged; this.TabControl.IsMinimized = this.IsMinimized; this.TabControl.ContentGapHeight = this.ContentGapHeight; this.TabControl.SetBinding(RibbonTabControl.IsMinimizedProperty, new Binding("IsMinimized") { Source = this, Mode = BindingMode.TwoWay }); this.TabControl.SetBinding(RibbonTabControl.ContentGapHeightProperty, new Binding("ContentGapHeight") { Source = this, Mode = BindingMode.OneWay }); foreach (var ribbonTabItem in this.Tabs) { this.TabControl.Items.Add(ribbonTabItem); } this.TabControl.SelectedItem = selectedTab; foreach (var toolBarItem in this.ToolBarItems) { this.TabControl.ToolBarItems.Add(toolBarItem); } } if (this.quickAccessToolBar != null) { this.quickAccessStream = new MemoryStream(); if (!this.AutomaticStateManagement || this.IsStateLoaded) { this.SaveState(this.quickAccessStream); } this.ClearQuickAccessToolBar(); this.quickAccessToolBar.ItemsChanged -= this.OnQuickAccessItemsChanged; foreach (var quickAccessMenuItem in this.QuickAccessItems) { this.quickAccessToolBar.QuickAccessItems.Remove(quickAccessMenuItem); } } this.quickAccessToolBar = this.GetTemplateChild("PART_QuickAccessToolBar") as QuickAccessToolBar; if (this.quickAccessToolBar != null) { foreach (var quickAccessMenuItem in this.QuickAccessItems) { this.quickAccessToolBar.QuickAccessItems.Add(quickAccessMenuItem); } this.quickAccessToolBar.ItemsChanged += this.OnQuickAccessItemsChanged; var binding = new Binding("CanQuickAccessLocationChanging") { Source = this, Mode = BindingMode.OneWay }; this.quickAccessToolBar.SetBinding(QuickAccessToolBar.CanQuickAccessLocationChangingProperty, binding); if (this.quickAccessToolBar.Parent == null) { this.AddLogicalChild(this.quickAccessToolBar); } this.quickAccessToolBar.Loaded += this.OnFirstToolbarLoaded; } }