C#子窗口的模态与非模态设置方法

   2024-09-30 4890
核心提示:在C#中,子窗口可以是模态(Modal)或非模态(Non-Modal)模态子窗口:模态子窗口会阻止用户与主窗口进行交互,直到子窗口关闭。

在C#中,子窗口可以是模态(Modal)或非模态(Non-Modal)

模态子窗口:

模态子窗口会阻止用户与主窗口进行交互,直到子窗口关闭。要创建模态子窗口,请使用ShowDialog()方法。例如:

using System;using System.Windows.Forms;namespace ModalExample{    public partial class MainForm : Form    {        public MainForm()        {            InitializeComponent();        }        private void buttonOpenChild_Click(object sender, EventArgs e)        {            ChildForm childForm = new ChildForm();            childForm.ShowDialog(this); // 显示模态子窗口        }    }}
非模态子窗口:

非模态子窗口允许用户在子窗口打开时与主窗口进行交互。要创建非模态子窗口,请使用Show()方法。例如:

using System;using System.Windows.Forms;namespace NonModalExample{    public partial class MainForm : Form    {        public MainForm()        {            InitializeComponent();        }        private void buttonOpenChild_Click(object sender, EventArgs e)        {            ChildForm childForm = new ChildForm();            childForm.Show(this); // 显示非模态子窗口        }    }}

这两种方法都可以在子窗口的构造函数中传递一个IWin32Window对象,该对象表示子窗口的所有者。这样,子窗口将始终位于其所有者窗口的前面。

 
举报打赏
 
更多>同类物流大全
推荐图文
推荐物流大全
点击排行

网站首页  |  关于我们  |  联系方式网站留言    |  赣ICP备2021007278号