我想创建一个Custom Popup使用UserControl,因为这是UWP应用程序,我想Popup在用户按下ESC键盘时隐藏.
我尝试覆盖OnKeyDown方法,UserControl但是当我按下ESC键盘时,这个方法从未执行过.
protected override void OnKeyDown(KeyRoutedEventArgs e)
{
if (e.Key == VirtualKey.Escape)
{
this.Visibility = Visibility.Colapse;
}
}
Run Code Online (Sandbox Code Playgroud)
我想在用户按下键盘上的ESC时隐藏Popup.
在UWP应用程序中,请考虑使用CoreWindow.CharacterReceived事件
在UserControl中,在Constructor方法中添加事件处理程序:
public CustomPopupControl()
{
this.InitializeComponent();
Window.Current.CoreWindow.CharacterReceived += CoreWindow_CharacterReceived;
}
private void CoreWindow_CharacterReceived(CoreWindow sender, CharacterReceivedEventArgs args)
{
if(args.KeyCode==27) //ESC
{
//Do somthing
this.Visibility = Visibility.Collapsed;
}
}
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
1728 次 |
| 最近记录: |