如何检测弹出窗口何时关闭?
Popup类在UWP中没有Closing
事件,这与存在此类事件的WPF不同。
我需要这样才能保持Popup的状态,因为用户可以修改布局。
答案 0 :(得分:2)
如您所知,没有Closing事件。通过注册IsOpen属性更改(如果IsLightDismissEnabled属性设置为true ...),您可能会很幸运。
this.popup.RegisterPropertyChangedCallback(Popup.IsOpenProperty, (d, e) =>
{
if (!this.popup.IsOpen)
{
// do something, popup is closing?
}
});
因为在LostFocus和Closed事件被触发之前发生了这种情况。除此之外,你可以重新设计你持久保存数据的方式,如果它不是非常复杂的,以避免不得不依赖于结束事件。