4
我試圖從WPF瀏覽器控件網頁捕獲點擊事件。我創建了一個ObjectForScriptingHelper類:使用ObjectForScripting時WPF瀏覽器控件window.external.invoke()拋出對象不支持屬性或方法
[PermissionSet(SecurityAction.Demand, Name = "FullTrust")]
[ComVisible(true)]
public class ObjectForScriptingHelper
{
public void Invoke()
{
MessageBox.Show("Hello");
}
}
而在託管Web瀏覽器控件的WPF窗口的構造函數中我使用這個輔助類的ObjectForScripting:
public MainWindow()
{
InitializeComponent();
StandardWpfBrowser.ObjectForScripting = new ObjectForScriptingHelper();
}
然後我有一個URI可變ViewPageUri
我導航到:
StandardWpfBrowser.Navigate(ViewPageUri);
然後,在由予已引用jQuery在瀏覽器控件中顯示的頁上,添加了一個按鈕的HT毫升頁和加入的javascript:
$('button').click(function() {
if (window.external === null)
alert('ObjectForScripting is not set');
else
{
alert('ObjectForScripting is set');
window.external.Invoke();
}
})
正在執行else
分支但錯誤消息object doesn't support property or method 'Invoke'
被拋出。
所有的教程和MSDN文檔都遵循上面的方法。我錯過了什麼嗎?