绑定 XAML 弹出窗口的打开事件

Binding on XAML Popup's Opened Event

每次显示 Popup 元素时,我都需要 运行 一些逻辑(由于其内容的动态大小,在我的例子中,还有弹出窗口的位置)。

以下 XAML 和处理程序不起作用,尽管它们是直接从 docs 中提取的:

<Popup x:Name="Foo" Opened="Foo_Opened">
  ...
</Popup>

void Foo_Opened(object sender, EventArgs args)
{
  ...
}

构建失败并显示消息:

No overload for 'Foo_Opened' matches delegate System.EventHandler<object>

这里接受的实际方法签名是:

void Foo_Opened(object sender, object args)
{
  ...
}