前提・実現したいこと
自作のメッセージボックスを作りましたが、
メインフォームのメソッドで、引数を一回引き受けてから
自作クラスのメソッドを呼び出す方法で正しいのかどうかという疑問が出てきました。
SystemのMessageBoxと同じような感じで、スイッチとアイコンを選べるようにしたので
呼び出し側のメソッドも応じて多くなっています。
直接、自作クラスのメソッドを呼び出すことが出来ればメインのコードが短くなっていいのかなと、
単純に思ったりしています。
該当のソースコード
呼び出し側(メインフォーム)
C#
1private DialogResult MessageWindow(string msg) 2{ 3 MessageWindow f = new MessageWindow(); 4 DialogResult ret = f.ShowWindow(this, msg, "", MessageBoxButtons.OK, MessageBoxIcon.None); 5 f.Dispose(); 6 return ret; 7} 8~中略~ 9private DialogResult MessageWindow(string msg, string title, MessageBoxButtons btn, MessageBoxIcon icon) 10{ 11 MessageWindow f = new MessageWindow(); 12 DialogResult ret = f.ShowWindow(this, msg, title, btn, icon); 13 f.Dispose(); 14 return ret; 15}
自作クラス
C#
1using System.Drawing; 2using System.Windows.Forms; 3using System.Media; 4 5namespace Test 6{ 7 public partial class MessageWindow : Form 8 { 9~中略~ 10 public DialogResult ShowWindow(IWin32Window owner, string msg, string title, MessageBoxButtons btn, MessageBoxIcon icon) 11 { 12~中略~ 13 Text = title; 14 label1.Text = msg; 15 ShowDialog(owner); 16 return DialogResult; 17 } 18 } 19}
備考
MessgaWindowメソッドを自作クラスに書いてみましたが
自作クラスのインスタンスを作らないと、そもそもメソッドを呼び出せない。
呼び出し側と自作クラスの名前空間は同じです。
回答2件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
2019/04/15 07:48