private void OnChecked(object sender, RoutedEventArgs routedEventArgs) { if (!IsChecked.HasValue || !IsChecked.Value) return; var args = new MenuOpeningEventArgs (); var opening = this.MenuOpening; if (opening != null) opening (this, args); var menu = args.ContextMenu; if (menu == null) { IsChecked = false; return; } string text = Content as string; if (!String.IsNullOrWhiteSpace (text)) { SWC.MenuItem selected = menu.Items.OfType<SWC.MenuItem>().FirstOrDefault (i => i.Header as string == text); if (selected != null) selected.IsChecked = true; } menu.Closed += OnMenuClosed; menu.PlacementTarget = this; menu.Placement = PlacementMode.Bottom; menu.IsOpen = true; }
private void Menu_MenuOpening(MenuOpeningEventArgs menu) { if (!canOpenWorkerApp) { canOpenWorkerApp = true; return; } if (menu.CurrentMenu.Title == "_Window") { menu.NewMenuBarItem = OpenedWindows(); } else if (menu.CurrentMenu.Title == "_View") { menu.NewMenuBarItem = View(); } }
private void OnChecked(object sender, RoutedEventArgs routedEventArgs) { if (!IsChecked.HasValue || !IsChecked.Value) { return; } var args = new MenuOpeningEventArgs(); var opening = this.MenuOpening; if (opening != null) { opening(this, args); } var menu = args.ContextMenu; if (menu == null) { IsChecked = false; return; } string text = Content as string; if (!String.IsNullOrWhiteSpace(text)) { SWC.MenuItem selected = menu.Items.OfType <SWC.MenuItem>().FirstOrDefault(i => i.Header as string == text); if (selected != null) { selected.IsChecked = true; } } menu.Closed += OnMenuClosed; menu.PlacementTarget = this; menu.Placement = PlacementMode.Bottom; menu.IsOpen = true; }