非模态:form.Show();可以无限制地弹出很多窗体
模态:form.ShowDialog();是阻塞的,只有关闭以后才继续向下执行。(阻塞操作)
私有字段不能直接访问,可以写一个public属性,读取私有字段值然后传回来
winform MDI风格是在一个窗体里面弹出一个窗体时,窗体还是在原来的窗体中!
1.在主窗口里面设置true
2.在方法里new一个新窗口并且将父窗口设置为当前窗口
FormChild fc = new FormChild();
fc.MdiParent = this;
fc.Show();
登录主窗口:
static class Program
{
/// <summary>
/// 应用程序的主入口点。
/// </summary>
[STAThread]
static void Main()
{
Application.EnableVisualStyles();
Application.SetCompatibleTextRenderingDefault(false);
Application.Run(new MainForm());
}
FormLogin formlogin = new FormLogin();
formlogin.ShowDialog(); 这段代码可以添加在Application.Run()前面
//Application.Run()启动的是主窗口,主窗口关闭了程序就退出了,所以不能Application.Run(formlogin);