我在C#.NET Framework 2.0中遇到了form.Show()的問題。C#.NET form.Show()非常慢
//segment code (FormA's caller)
FormA frmA = new FormA();
writeLog("Begin: " + Environment.TickCount);
frmA.SuspendLayout();
frmA.Show();
frmA.ResumeLayout();
writeLog("End: " + Environment.TickCount);
....
//segment code (FormA)
private void FormA_Load(object sender, EventArgs e){
writeLog("Begin - Load: " + Environment.TickCount);
}
從上面的段代碼,我建立在發佈模式並執行它。 我在我的筆記本電腦(Windows XP x86)上發現了「開始:」和「開始 - 加載」約2-3秒的不同時間,但服務器(Windows 2003 SP2)上的不同時間超過5秒。 我不知道爲什麼。
此外,備考有許多TableLayout和用戶控件(總控制約計800)
「我不知道爲什麼。」這是因爲800是初始化的大量控件! – overslacked 2009-12-03 05:37:25
在這種情況下,我打電話的InitializeComponent形式構造器,但爲什麼.show()來的Form_Load費時 – 2009-12-03 07:39:03