コード例 #1
0
        /// <summary>
        /// This function is the callback used to execute the command when the menu item is clicked.
        /// See the constructor to see how the menu item is associated with this function using
        /// OleMenuCommandService service and MenuCommand class.
        /// </summary>
        /// <param name="sender">Event sender.</param>
        /// <param name="e">Event args.</param>
        private void MenuItemCallback(object senderObj, EventArgs args)
        {
            if (senderObj is OleMenuCommand && args is OleMenuCmdEventArgs)
            {
                var solutionProcessor = new SolutionProcessor(_ide);
                var projects          = solutionProcessor.GetAllSolutionProjects();

                var messageBoxService = new MessageBoxService();
                var dbService         = new MsSqlServerService();
                var scaffoldingVM     = new ScaffoldingWizardViewModel(
                    messageBoxService, dbService, dbService, new ScaffoldingService(), projects);
                var scaffoldingWindow = new ScaffoldingWizard(scaffoldingVM);

                messageBoxService.ShowInfoMessageFunc =
                    msg => showMessageBox(scaffoldingWindow, msg, MessageBoxImage.Information);
                messageBoxService.ShowErrorMessageFunc =
                    msg => showMessageBox(scaffoldingWindow, msg, MessageBoxImage.Error);
                messageBoxService.ShowWarningMessageFunc =
                    msg => showMessageBox(scaffoldingWindow, msg, MessageBoxImage.Warning);

                scaffoldingWindow.ShowModal();
            }
        }
コード例 #2
0
        private async Task showMessageBox(ScaffoldingWizard owner, string text, MessageBoxImage icon)
        {
            await ThreadHelper.JoinableTaskFactory.SwitchToMainThreadAsync();

            MessageBox.Show(owner, text, Strings.DatabaseScaffoldingMenuItemTitle, MessageBoxButton.OK, icon);
        }