3

在这里,我遇到了弹出窗口的问题,我在 dll 中弹出一个用户控件并在应用程序中调用此 dll,但它显示在一个黑页上,我不知道它来自哪里。当我按下“<-”按钮时,应用程序直接退出......我无法返回调用它的应用程序主页。我想知道如何从弹出窗口返回。我试图隐藏弹出窗口,但它不会回到应用程序的主页。

public void change_PIN(OnCCB_ChangeUserPINCall changeUserPINCall) 
{
    Popup ppChangePIN = new Popup();
    ChangePIN changePIN = new ChangePIN();
    ppChangePIN.Child = changePIN;
    ppChangePIN.IsOpen = true;
}

如何ppChangePIN.IsOpen=false在弹出窗口中设置 .cs 以使其消失?

4

2 回答 2

2

处理后退按钮的后退按键事件,例如

step1:首先在弹出窗口打开时设置一个标志,例如**bool PopupOpen=True**

step2:当弹出窗口关闭时PopupOpen=False

 protected override void OnBackKeyPress(System.ComponentModel.CancelEventArgs e)
    {
        if(PopupOpen== True)
        { 
          ppChangePIN.IsOpen=false;

         PopupOpen=False;
         e.Cancel = true;
        }
        else
        {}
    }

如果有任何疑问请告诉我...

希望它对你有用

于 2013-10-03T05:55:24.250 回答
0
private bool RemovePopup()
{
   if (ppChangePIN == null || !ppChangePIN.IsOpen) 
      return false;
   ppChangePIN.IsOpen = false;
   return true;
}
protected override void OnBackKeyPress(CancelEventArgs e)
{
  if (RemovePopup())
    e.Cancel = true;
}
于 2015-12-22T11:02:16.007 回答