我正在創建一次打開多個表單的C#應用程序。這個目前的工作是先打開表格,然後加載他們的內容。如何強制打開表單,加載其內容,然後打開下一個表單?如何在打開另一個表單之前進行表單加載?
重複動作是觸發多個表單一次打開的動作。
static void Main(string[] args)
{
Application.EnableVisualStyles();
Application.SetCompatibleTextRenderingDefault(false);
ShowForms();
Application.Run();
}
static void ShowForms()
{
Random random = new Random();
int formCount = 0;
RepeatAction(5,() =>
{
formCount++;
int x = random.Next(0, 1000);
int y = random.Next(0, 1000);
Form1 form = new Form1
{
StartPosition = FormStartPosition.Manual,
ShowInTaskbar = false,
Location = new Point(x, y)
};
form.FormClosed += (sender, e) =>
{
if (--formCount > 0)
{
return;
}
Application.ExitThread();
};
form.Show();
});
}
在Winforms中沒有單獨的「加載其內容」操作。它在構造表單對象時完成,它的InitializeComponent()方法由構造函數調用。大多數程序員會將它與「完全繪製」混淆起來,這可能需要一段時間才能完成控件和位圖的填充。顯示的事件可用於此,調用Update()以確保控件也被繪製。 –