tbf/TestBenchFramework/BenchControl/Operations/MessageBoxForm.cs

58 lines
1.2 KiB
C#

///
/// 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<EventArgs>(OnForceClose), sender, args); }
else OnForceClose(sender, args);
};
}
private void OnForceClose(object sender, EventArgs args)
{
DialogResult = DialogResult.Cancel;
Close();
}
#endregion
}
}