/// /// Copyright (c) 2013-2015 Sensus Metering Systems /// using System; using System.Windows.Forms; using TBF.Resources; namespace TBF.BenchControl.Operations { public partial class MessageBoxForm : Form, GenericDevices.IHasCompleted { public string Message; /// Is set to 'true' when the form closes public bool Completed { get { return completed; } } bool completed; public MessageBoxForm() { InitializeComponent(); completed = false; StartForceCloseHandler(); } private void MessageBoxForm_Load(object sender, EventArgs e) { Text = Strings.Message; messageLabel.Text = Message; okButton.Text = Strings.OkBtnText; } private void okButton_Click(object sender, EventArgs e) { completed = true; Close(); } #region Forced close handling public void StartForceCloseHandler() { UiBridge.Bridge.CloseModelessFormHandler += delegate(object sender, EventArgs args) { if (InvokeRequired) { Invoke(new EventHandler(OnForceClose), sender, args); } else OnForceClose(sender, args); }; } private void OnForceClose(object sender, EventArgs args) { DialogResult = DialogResult.Cancel; Close(); } #endregion } }