在KeyDown事件中,我有:
if (e.Key == Key.Delete)
{
if (HtmlPage.Window.Confirm("r u sure?"))
{
//Do stuff....
}
}
我收到此错误“ 尝试读取或写入受保护的内存。这通常表明其他内存已损坏。“@ Confirm?
编辑:下面显示的解决方法和抛出错误的行是.Window.Confirm
Dispatcher.BeginInvoke(() =>
{
if (e.Key == Key.Delete)
{
if (HtmlPage.Window.Confirm("r u sure?"))
{
//Do stuff....
}
}
});
任何人都知道快速解决方案。
答案 0 :(得分:1)
试试这个......
if (e.Key == Key.Delete)
{
Dispatcher.BeginInvoke(() =>
{
if (HtmlPage.Window.Confirm("r u sure?"))
{
//Do stuff....
}
}
}
关于MSDN的非常好的解释。这通常表示当BackgroundWorker
线程被旋转,然后尝试访问UIElement
时,例如Button,那时你也会获得AccessViolationException
。