0

私は、銀色のアプリケーションであるWebブラウザコントロールを備えたWPFアプリケーションを持っています。以前は、HTMLブリッジを使用して、WPFアプリケーションからsliverlightアプリケーションに関数を呼び出すことができました。

ここで、これとは逆の操作を行う必要があります。つまり、SilverlightからWPFアプリケーション内の関数を呼び出す必要があります。
これはどのように行うことができますか?

4

1 に答える 1

2

以下に示すように、プロパティを使用してこれを行うことができます。

C#パート:

webBrowserControlName.ObjectForScripting = new ScriptInterface();

ここで、ScriptInterfaceは次のとおりです

[System.Runtime.InteropServices.ComVisibleAttribute(true)]
public class ScriptInterface
{

    public void CSharpMethod(string data)
    {
        MessageBox.Show(data);
    }
}

HTML部分

Webブラウザコントロールにロードするページで、次の手順を実行します。

window.External.CSharpMethod('from html page to WPF');
于 2012-09-18T16:45:56.197 に答える