我有问题显示和隐藏两种形式。 我的应用程序首先创建一个按钮(btnToggle)和一个复选框以及另一个仍然隐藏的窗体(窗体2)。WinForm显示和隐藏拼图
我没有得到我期待的行为,下面将对此进行解释。
private void btnToggle_Click(object sender, EventArgs e)
{
// note that form1 is big enough to contain form2 but form1 not maximised and form2 is not a modal form
// start with form1 visible form2 not visible chk box not checked
// click btnToggle and form2 is shown on top of form1
// click on form1 form2 now behind form1
// check chksecondFormAlwaysOnTop
// click btnToggle form2 is shown on top of form1 but
// should not go behind form1 when form1 is clicked but it does.
// what is wrong with the code below.
// I want form2 to always be on top when chksecondFormAlwaysOnTop
// is checked but it isnt.
// My code below:
if (Form2.Visible && Form2.TopMost)
{
Form2.Hide();
}
else if(Form2.Visible && !Form2.TopMost)
{
Form2.BringToFront();
}
else if (!Form2.Visible && chksecondFormAlwaysOnTop.Checked)
{
Form2.Show();
Form2.TopMost = true;
}
else
{
Form2.Show();
Form2.TopMost = false;
}
}
使用显示(所有者)超载。 –