□投稿者/ mbox (1回)-(2018/03/15(Thu) 21:51:00)
|
分類:[.NET 全般]
以下のプログラムで、メニューをクリックするとメッセージボックスが2回出ることを期待しているのですが、
なぜか1個目のメッセージボックスが出ず、
2個目のメッセージボックス(2 ret1=No)しか出ません。
期待通りにメッセージボックスを出すにはどうすればいいのでしょうか?
(.net 4.0, xpでもwin7でも同じ現象)
using System;
using System.Windows.Forms;
class Form1 : Form
{
[STAThread]
static void Main()
{
Application.Run(new Form1());
}
public Form1()
{
Controls.Add(new UserControl1());
Menu = new MainMenu(new MenuItem[] { new MenuItem("&File...", (sender, e) =>
{
var control = Controls[0];
Controls.Remove(control);
control.Dispose();
Controls.Add(new UserControl1());
})});
}
}
class UserControl1 : UserControl
{
public UserControl1()
{
var ret1 = MessageBox.Show("1");
var ret2 = MessageBox.Show("2 ret1=" + ret1.ToString());
Controls.Add(new Button());
}
}
|
|