Popup未关闭事件Stayopen设置为False

我使用以下代码片段来定义Popup。

代码段[XAML]:

        

我使用以下代码片段打开弹出窗口

代码片段[C#]:

 private void FilterButton_OnClick(object sender, RoutedEventArgs e) { this.FilterPanel.IsOpen = true; } 

Scenorio:

使用按钮单击打开弹出窗口。

按Tab键。

焦点移动到TextBox。

实际行为:

弹出窗口没有关闭。

预期行为:

Popup应该关闭。

在这里我已经附上了简单的样本。请您仔细阅读并提供指导以存档我的要求。 提前致谢。

这很奇怪。 我拿了你的代码并将它粘贴在一个新的项目窗口中,并且每次弹出都会关闭。 但是我记得当我想创建自己的自定义控件时,我遇到了类似的问题。 我知道其中一件事就是将StaysOpen设置为false。 我知道你已经这样做了。 另一种方法是在初始化FilterPanel时尝试设置以下内容

 FilterPanel.IsMouseCaptureWithinChanged +=FilterPanel_IsMouseCaptureWithinChanged; void FilterPanel_IsMouseCaptureWithinChanged(object sender, DependencyPropertyChangedEventArgs e) { if (!(bool)e.NewValue) { FilterPanel.IsOpen = false; } } 

正如我所说的,当我复制你的代码时,我的代码工作得很好,所以我无法测试它,但上面应该可行。