Example #1
0
 public void ShowDialog <TDialogViewModel>(IModalWindow view, TDialogViewModel viewModel, Action <TDialogViewModel> onDialogClose)
 {
     view.DataContext = viewModel;
     if (onDialogClose != null)
     {
         view.Closed += (sender, e) => onDialogClose(viewModel);
     }
     view.Show();
 }
        private void ModalDialog(VariableItem item, bool add)
        {
            IModalWindow modalDialog = null;

            try
            {
                _dialogPage = new AssignVariable(item, base.Wizard.Host, VariableIsInputVariable);
                modalDialog = base.Wizard.Host.ShowModalWindow(new IWizardPage[] { _dialogPage }, new System.Drawing.Size((int)_dialogPage.Width, (int)_dialogPage.Height), false);
                modalDialog.ShowButton(ModalWindowButtonTypes.OK);
                modalDialog.ShowButton(ModalWindowButtonTypes.Cancel);
                modalDialog.OKClicked += new EventHandler <ModalWindowButtonClickEventArgs>(modalDialog_OKClicked);
                if (add)
                {
                    modalDialog.SetTitle("Add Variable");
                }
                else
                {
                    modalDialog.SetTitle("Assign Variable");
                    modalDialog.CancelClicked += new EventHandler <ModalWindowButtonClickEventArgs>(modalDialog_CancelClicked);
                }

                modalDialog.Show();
            }
            catch (Exception Ex)
            {
                ModalWindow.ShowMessage(base.Wizard.Host.WindowHandle, ModalWindowIconTypes.Error, "K2", Ex.Message.ToString(), new ModalWindowButtonTypes[] { ModalWindowButtonTypes.OK });
            }
            finally
            {
                if (_dialogPage != null)
                {
                    _dialogPage.Dispose();
                    _dialogPage = null;
                }

                if (modalDialog != null)
                {
                    modalDialog.OKClicked -= modalDialog_OKClicked;
                    if (!add)
                    {
                        modalDialog.CancelClicked -= modalDialog_CancelClicked;
                    }
                    modalDialog.Dispose();
                    modalDialog = null;
                }
            }
        }