private void MMenuItemControl_MenuItemSelected(object sender, MenuItemSelectedEventArgs eventArgs) { MenuItem selectedItem = eventArgs.SelectedMenuItem; DecoratedMessage preMessage = selectedItem.PreMessage; if (preMessage != null && !(preMessage.ShowOnce && preMessage.Shown)) { DialogResult preMessageResult = MessageBox.Show(this, preMessage.Message, preMessage.Caption, preMessage.Buttons, preMessage.Type); preMessage.Shown = true; if (preMessageResult == DialogResult.No || preMessageResult == DialogResult.Cancel) { return; } } if (selectedItem is Menu menu) { SetCurrentMenu(menu, mActivityExecutor.ProductModel); } else if (selectedItem is Task task) { if (mTaskProgressForm == null) { mTaskProgressForm = new TaskProgressForm { ActivityExecutor = mActivityExecutor }; } mTaskProgressForm.Task = task; mTaskProgressForm.ShowDialog(this); if (selectedItem.ParentMenu.ReturnToMainMenu) { SetCurrentMenu(mCommands.MainMenu, mActivityExecutor.ProductModel); } } else { try { Query query = (Query)selectedItem; QueryResult result = mActivityExecutor.ExecuteQuery(query); if (!result.Success) { MessageBox.Show(this, result.Message, Resources.CptQueryFailed, MessageBoxButtons.OK, MessageBoxIcon.Warning); return; } if (query.OfferClipboardCopy) { if (MessageBox.Show(this, string.Format(Resources.MsgQueryOfferClipboardCopy, result.Message), Resources.CptQueryCompleted, MessageBoxButtons.YesNo, MessageBoxIcon.Information, MessageBoxDefaultButton.Button2) == DialogResult.Yes) { Clipboard.SetData(DataFormats.Text, result.Message); } } else { MessageBox.Show(this, result.Message, Resources.CptQueryCompleted, MessageBoxButtons.OK, MessageBoxIcon.Information); } } catch (Exception exception) { HandleQueryException(exception); } } }
protected void OnMenuItemSelected(MenuItemSelectedEventArgs menuItemSelectedEventArgs) { MenuItemSelected?.Invoke(this, menuItemSelectedEventArgs); }