我ChildWindow
有 CloseButton 和分配给Click
事件的处理程序。代码(仅作为示例):
声明关闭按钮:
<Button x:Name="CloseButton" Click="OnCloseButtonClick" />
私人计数器(用于诊断问题):
private uint _i;
关闭事件处理程序:
OnCloseButtonClick(object sender, RoutedEventArgs e)
{
DialogResult = true;
System.Diagnostics.Debug(_i++);
}
快速点击后程序可以输出“1”、“2”、“3”等...据我所知,在设置DialogResult
= true
(或false
)后,ChildWindow应该被关闭并且不应该有任何方法来引发CloseButton的Click
事件第二次。
谁能帮我找出问题的原因并在没有布尔标志(已执行/!已执行)的情况下帮助解决它?