在我的弹出窗口窗口(包含游戏选项控件)我有“重置HighScores”按钮。按钮消防MessageDialog与TextBlock“你确定......”和两个按钮“是”和“否”。但是,当MessageDialog打开时,Popup关闭。你知道如何让弹出窗口仍然活着吗?MessageDialog关闭弹出窗口
0
A
回答
1
将您的Popup
的IsLightDismissEnabled
属性改为false
即可实现。
popup.IsLightDismissEnabled = false;
4
我能够使用Action
委托作为当MessageDialog
关闭回调来解决这个问题。
关键是要调用await
后的动作MessageDialog
的ShowAsync
在async
函数中。
另一个关键是关闭并打开您的弹出窗口,以获得IsLightDismissEnabled
实际占据。
XAML:
<Popup
IsLightDismissEnabled="{Binding IsLightDismiss, Mode=TwoWay}"
IsOpen="{Binding IsPopupOpen, Mode=TwoWay}">
视图模型:
private bool isPopupOpen;
public bool IsPopupOpen
{
get { return this.isPopupOpen; }
set { this.SetProperty(ref this.isPopupOpen, value); }
}
private bool isLightDismiss;
public bool IsLightDismiss
{
get { return this.isLightDismiss; }
set { this.SetProperty(ref this.isLightDismiss, value); }
}
protected void ShowDialog()
{
this.IsLightDismiss = false;
this.IsPopupOpen = false;
this.IsPopupOpen = true;
Action showPopup =() => {
this.IsLightDismiss = true;
this.IsPopupOpen = false;
this.IsPopupOpen = true;
};
ShowMessageDialog("message", "title", showPopup);
}
private async void ShowMessageDialog(string message, string title, Action callback)
{
var _messageDialog = new MessageDialog(message, title);
await _messageDialog.ShowAsync();
callback();
}
相关问题
- 1. 弹出窗口:当弹出弹出窗口时关闭弹出
- 2. 弹出窗口关闭
- 3. 关闭弹出窗口
- 4. 关闭AngularStrap弹出窗口
- 5. 要关闭弹出窗口
- 6. Javascript:关闭弹出窗口
- 7. 弹出窗口不关闭
- 8. 弹出窗口不关闭
- 9. 关闭弹出窗口按钮上的弹出窗口
- 10. 关闭实际弹出窗口内的Bootstrap弹出窗口?
- 11. 如何打开弹出窗口并关闭弹出窗口?
- 12. 将鼠标悬停在打开的弹出窗口上,将鼠标移出关闭弹出窗口,弹出窗口应该不会关闭弹出窗口
- 13. 关闭弹出窗口关闭直到浏览器关闭
- 14. 加载后关闭弹出窗口
- 15. SAP VBA弹出窗口关闭
- 16. EXT JS关闭弹出窗口
- 17. 如何关闭弹出窗口?
- 18. 弹出窗口不会关闭
- 19. 等待弹出窗口关闭硒webdriver
- 20. 页面关闭时的弹出窗口
- 21. 如何关闭模式弹出窗口?
- 22. 弹出窗口不滚动时关闭
- 23. FB.ui弹出窗口不会关闭
- 24. 关闭弹出窗口选项
- 25. 关闭与JavaScript的弹出窗口?
- 26. 检查窗口是否弹出关闭
- 27. 关闭弹出窗口UITableViewController视图
- 28. 成功时关闭弹出窗口
- 29. Telerik Control弹出窗口拒绝关闭
- 30. Javascript:关闭一个弹出窗口
不起作用,话题还是实际 –
你应该加上'popup.LostFocus'事件处理程序,然后在事件处理程序,你可以确保它保持打开状态 – Mayank