子窗口总是转到后面
本文关键字:窗口 | 更新日期: 2023-09-27 18:33:55
我有一个MDI表单,当我启动程序时,打开的子窗口总是转到后面,我已经尝试了MDI表单上的sendtoback(),在子表单上尝试了bringtofront(),没有运气。任何人?
private void MDI_Form_Load(object sender, EventArgs e)
{
SendToBack();
Form1 loginscrn = new Form1();
loginscrn.Show();
}
private void Form1_Load(object sender, EventArgs e)
{
BringToFront();
SqlConnection connection = new SqlConnection(@"server=.'SQLEXPRESS; database=loginsTest;Trusted_Connection=yes");
connection.Open();
string selection = "select * from Logins where Name = '"+userNameBox.Text+"'";
SqlCommand command = new SqlCommand(selection, connection);
SqlDataAdapter da = new SqlDataAdapter(command);
DataSet ds = new DataSet();
da.Fill(ds);
DataTable dt = ds.Tables[0];
}
要么是:
loginscrn.ShowDialog(this);
以使其成为对话框,或:
loginscrn.MdiParent = this;
loginscrn.Show();
如果该形式被认为是MDI儿童。
尝试设置 Owner 属性。"所有者窗口永远无法覆盖拥有的窗口。"有关详细信息,请阅读此 msdn 文章
编辑:在form_load中调用BringToFront()对您没有任何好处,因为此时表单不可见。您可以尝试将其移动到OnShowed。
protected override void OnShown(EventArgs e)
{
this.BringToFront();
base.OnShown(e);
}