从GeckoFX调用C#方法C#controll(winforms)

问题描述:

我想制作一个使用HTML5作为UI的应用程序。后面的代码应该写在C#.Net从GeckoFX调用C#方法C#controll(winforms)

我有一个GeckoFX控制。我想要做的事情是当我点击HTML页面中的一个按钮/ div元素,一个C#方法被激活。

这里是我的想法捏造代码:

HTML

<div id="testBtn" onclick="doSomething()">Click for a C# generated message </div> 

C#

void doSomething() 
{ 
//does something in C# 
} 
+0

您可以对服务器进行ajax调用。但是该方法必须具有'public static void ...'签名和'[WebMethod]'属性。 – PoweredByOrange 2014-09-02 17:08:09

而不是使用JavaScript,你可以在C#中添加事件处理程序中添加事件处理程序。

<div id="testBtn">Click for a C# generated message </div> 

C#:

browser.DomClick += (sender, args) => 
     { 
      switch (args.Target.CastToGeckoElement().GetAttribute("id")) 
      { 
       case "testBtn": 
        MessageBox.Show("does something in C#"); 
        break; 
      } 
     }; 

现在将是很好能够做这样的事情:

browser.Document.GetElementById( “testBtn”)DomClick + =(S,A )=> doSomething();

但是目前geckofx没有这个功能,虽然可以添加...