private void InitializeWorkspace() { DataContext = new CWorkspace(); CWorkspace.Instance.DockingManager = dockManager; foreach (var tool in CWorkspace.Instance.Tools) { if (!tool.CanBeInvisible || tool.IsAlwaysHidden) { continue; } System.Windows.Controls.MenuItem toolMenu = new System.Windows.Controls.MenuItem(); toolMenu.Header = tool.Name; toolMenu.IsCheckable = true; toolMenu.DataContext = tool; Binding isCheckedBinding = new Binding(); isCheckedBinding.Path = new PropertyPath("IsVisible"); isCheckedBinding.Mode = BindingMode.TwoWay; toolMenu.SetBinding(System.Windows.Controls.MenuItem.IsCheckedProperty, isCheckedBinding); ToolsMenu.Items.Add(toolMenu); } }
private void SetBindingForIsChecked(System.Windows.Controls.MenuItem childMenuitem, string converterParameter) { Binding binding = new Binding("TagManager.Sorting"); binding.Converter = TagSortingToBool; binding.ConverterParameter = converterParameter; childMenuitem.SetBinding(System.Windows.Controls.MenuItem.IsCheckedProperty, binding); }