在BackKeyPress上关闭UserControl上的Popup

时间:2016-02-05 05:18:14

标签: c# silverlight user-controls windows-phone-8.1

我在windows phone 8.1 silverlight中有一个项目,其中我有一个用户控件,它显示在主页面按钮上的点击事件中。并且该用户控件有一个按钮。点击该按钮后会出现一个弹出窗口,这个弹出窗口也是一个UserControl。 现在我想在BackKeypress上关闭这个Popup。由于UserControl不能拥有BackkeyPress事件,因此难以实现。那么有可能,如果是的话怎么样?

请告诉我..

提前感谢您的帮助。

2 个答案:

答案 0 :(得分:0)

您需要使用用户控件的按键启动或按键事件,并检测如下所示的键:

private void usercontrol1_KeyUp(object sender, KeyEventArgs e)
{
    If (e.KeyCode == Keys.Back)
    {
        //do something
    }
}

答案 1 :(得分:0)

我得到了它,它的工作就像这样 我在OnBackkeyPress()

中的MainPage.xaml.cs中添加了此代码
if(usercontrol1.Visibility==Visibility.Visible && usercontrol.popup_usercontrol2.IsOpen)
{
     UC_UserProfile.pop_upAddVehicles.IsOpen = false;
     e.cancel=true;
}

其中usercontrol1是控件,点击主页上的按钮,popup_usercontrol2是在usercontrol1上点击buttom时弹出的窗口。