public static DialogResult MessageShowAgain(string title, string promptText) { Form form = new Form(); System.Windows.Forms.Label label = new System.Windows.Forms.Label(); CheckBox chk = new CheckBox(); Controls.MyButton buttonOk = new Controls.MyButton(); System.ComponentModel.ComponentResourceManager resources = new System.ComponentModel.ComponentResourceManager(typeof(MainV2)); form.Icon = ((System.Drawing.Icon)(resources.GetObject("$this.Icon"))); form.Text = title; label.Text = promptText; chk.Tag = ("SHOWAGAIN_" + title.Replace(" ", "_").Replace('+', '_')); chk.AutoSize = true; chk.Text = Strings.ShowMeAgain; chk.Checked = true; chk.Location = new Point(9, 80); if (Settings.Instance.ContainsKey((string)chk.Tag) && Settings.Instance.GetBoolean((string)chk.Tag) == false) // skip it { form.Dispose(); chk.Dispose(); buttonOk.Dispose(); label.Dispose(); return(DialogResult.OK); } chk.CheckStateChanged += new EventHandler(chk_CheckStateChanged); buttonOk.Text = Strings.OK; buttonOk.DialogResult = DialogResult.OK; buttonOk.Location = new Point(form.Right - 100, 80); label.SetBounds(9, 40, 372, 13); label.AutoSize = true; form.ClientSize = new Size(396, 107); form.Controls.AddRange(new Control[] { label, chk, buttonOk }); form.ClientSize = new Size(Math.Max(300, label.Right + 10), form.ClientSize.Height); form.FormBorderStyle = FormBorderStyle.FixedDialog; form.StartPosition = FormStartPosition.CenterScreen; form.MinimizeBox = false; form.MaximizeBox = false; //ThemeManager.ApplyThemeTo(form); DialogResult dialogResult = form.ShowDialog(); form.Dispose(); form = null; return(dialogResult); }