私の研究に基づいて、MessageBoxフォームを親フォームのCenterにする唯一の方法は、カスタムMessageBoxクラスを作成することです。私は正常にCustomMessageBoxフォームを実装し、親フォームにエラーと情報メッセージを集中できるようになりました。しかし、新しいCustomMessageBoxフォームをインスタンス化する必要がないように、CustomMessageBoxフォームを静的にする方法を理解できません。エラーと情報のためのカスタムMessageBox
私はMessageBoxクラスの基本的なバージョンは以下の通りです
CustomMessageBox.Show(タイプ、メッセージ、など...):私はちょうど下記のような静的メソッドを呼び出すことができるようにしたいです。理想的には、私はCustomMessageFormをインスタンス化することなくこのフォームを表示する機能を持っていたいと思います。これは可能ですか?
namespace MarineService
{
public partial class CustomMessageForm : DevExpress.XtraEditors.XtraForm
{
private static CustomMessageForm form = new CustomMessageForm();
public CustomMessageForm()
{
InitializeComponent();
}
public void ShowDialog(string type, string message)
{
this.Text = type + "Information";
this.groupMessage.Text = type + "Information";
this.memoEditMessage.Lines[0] = message;
}
}
}
私がCustomMessageBoxで作業していたときに気になったアイデアは、CustomMessageBoxの新しいインスタンスを作成して表示する静的メソッドを持つ静的ユーティリティクラスを作成することでした。しかし、このソリューションが実装されている場合、新しいCustomMessageBoxを親ウィンドウに合わせるために、親フォームをユーティリティクラスの静的メソッドに渡す必要があります。私はWindowsプログラミングに新しいので、これが良いデザインであるかどうかはわかりません。コメントやフィードバックは大歓迎です。 – Grasshopper
[Winforms - MainFormの中央にMessageBoxを表示させるにはどうすればいいですか?](http://stackoverflow.com/questions/2576156/winforms-how-can-i-make-messagebox-appear-centered-on-mainform ) –