J'essaie d'invoquer une fonction dans une WebView. Les fonctions cibles que je dois appeler sont les suivantes :
play: function()
{
if (this.value < this.p.max)
{
this.inc();
this.timer = new it_timer({ object: this, method: "play", timeout: 200 });
}
else
this.stop();
},
stop: function()
{
if (this.timer)
this.timer.stop();
this.playing = false;
this.playbutton.style.backgroundPosition = "0 0";
}
J'ai commencé par appeler
webView.InvokeScript("play", new string[0]);
mais cela n'a pas fonctionné, HRESULT : 0x80020101. J'ai trouvé ceci http://support.microsoft.com/kb/247784 sur le sujet, mais ça ne m'a pas du tout aidé.
J'ai ensuite essayé de faire ce que j'ai trouvé comme exemple sur plusieurs sites :
webView.InvokeScript("eval", new string[] { "document.documentElement.outerHTML;");
et
webView.InvokeScript("alert", new string[] {"message"});
mais les deux n'ont pas fonctionné, donnant le même code HRESULT. Le WebView s'affiche normalement et le javascript fonctionne bien sur la page.
J'apprécierais toute aide pour identifier le problème / trouver une solution.
EDIT : Il semble que "alert" et toutes les méthodes qui sont déclarées dans les classes ne fonctionnent pas. Il semble qu'il y ait eu un InvokeMethod(..) dans les versions précédentes de .NET, y a-t-il des alternatives pour WinRT ?