KeyDown 事件中引发System.ExecutionEngineException异常

来源:互联网 发布:网络大v薛 编辑:程序博客网 时间:2024/05/27 10:44

Silverlight 中,如果在控件的 KeyDown事件中调用 HtmlPage.Window.Alert() 方法,将会报System.ExecutionEngineException异常,但调用 MessageBox.Show() 方法不会出错。

如下代码:

<TextBox x:Name="Test" KeyDown="Test_KeyDown"/>

private void Test_KeyDown(object sender, System.Windows.Input.KeyEventArgs e)

{

HtmlPage.Window.Alert("Hello, down"); // 调用这句将会异常

}

 

解决办法是改 keyDown事件为 KeyUp事件:

<TextBox x:Name="Test" KeyUp="Test_KeyUp"/>

private void Test_KeyUp(object sender, System.Windows.Input.KeyEventArgs e)

{

HtmlPage.Window.Alert("Hello, up"); // 调用这句正常

}

 

 

原创粉丝点击