我在c#中创建了一个弹出窗口.我有一个按钮,当用户点击按钮时,窗口会弹出.我的问题是,如果用户碰巧多次点击该按钮,该窗口将被多次打开.用户打开窗口后,如果用户单击按钮,我不希望再次打开窗口.这有可能实现吗?
我让窗口弹出如下:
PopUp myPopUp = new PopUp();
myPopUp.show();
Run Code Online (Sandbox Code Playgroud)
我正在使用wpf.
如果用户需要在弹出窗口打开后访问主窗口,我将创建一个类成员,该成员保存对弹出窗口的引用,并关闭引用以下内容的弹出窗口组null:
PopPp myPopUp = null;
private void OpenPopUp()
{
if(myPopUp == null)
{
myPopUp = new PopUp();
myPopUp.Closed += (x,y) => { myPopUp = null; };
myPopUp.Show();
}
}
Run Code Online (Sandbox Code Playgroud)
如果用户不需要与主窗口交互,则弹出窗口只需使用即可ShowDialog.在弹出窗口关闭之前,它将阻止对主窗口的任何输入:
PopUp myPopUp = new PopUp();
myPopUp.ShowDialog();
Run Code Online (Sandbox Code Playgroud)