Example #1
0
        private void SettingsHost_FormClosing(object sender, FormClosingEventArgs e)
        {
            if (!_closedInCode)
            {
                if (elementHost1.Child is SettingsControl sc && sc.Dirty)
                {
                    StringBuilder sb = new StringBuilder();
                    sb.AppendLine("Do you wish to save your changes?");
                    sb.AppendLine("  Click 'Yes' to save your changes and exit.");
                    sb.AppendLine("  Click 'No' to discard your changes and exit.");
                    sb.AppendLine("  Click 'Cancel' to return to the form.");

                    DialogResult dr = UserInteractions.AskUserYesNoCancel(sb.ToString());
                    switch (dr)
                    {
                    case DialogResult.Cancel:
                        e.Cancel = true;
                        break;

                    case DialogResult.Yes:
                        SystemOptions = sc.SystemOptions;
                        SystemOptions.Save();
                        DialogResult = DialogResult.OK;
                        break;

                    case DialogResult.No:
                        DialogResult = DialogResult.Cancel;
                        break;
                    }
                }
            }
        }
Example #2
0
        private void OnWpfButtonClick(object sender, EventArgs e)
        {
            WpfEventArgs args = (WpfEventArgs)e;

            switch (args.Button.ToLower())
            {
            case "ok":
                DialogResult = DialogResult.OK;
                if (elementHost1.Child is SettingsControl sc)
                {
                    SystemOptions = sc.SystemOptions;
                    SystemOptions.Save();
                    sc.Dirty = false;
                    Hide();
                }
                break;

            case "cancel":
                DialogResult  = DialogResult.Cancel;
                _closedInCode = true;
                Hide();
                break;
            }
        }