0

シナリオは、HTML でアイテムのリストを持っているというものです。アイテムをクリックすると、JS を使用して HTML を動的に作成し、特定のアイテムを渡す Silverlight アプリをロードします # (initParams を使用); そして、私の Silverlight アプリはこれをうまく視覚化します。新しい Web ページをロードするのではなく、同じページでこれを行うと、移行はスムーズです。

私のページでSilverlightにJS関数を呼び出させることが可能であることはわかっています(私が必要としているものとは反対です)。私のJS関数がイベントを発生させたり、Silverlightでメソッドを呼び出したりすることも可能だと思いますが、正確にはわかりません-誰かがこれを試しましたか? 回避策は毎回 Silverlight アプリを再作成することですが、既存の読み込まれた SL アプリでイベントを発生させるだけで、私の問題に対する完璧な解決策になります。

よろしく。

4

1 に答える 1

1

JavaScript から Silverlight アプリケーションのメソッドを呼び出すことができます。このブログ投稿を参照してください

Silverlight アプリでクラスを作成し、それ自体を JS から呼び出し可能として登録するだけです。

[ScriptableType]
public partial class SomeClass
{
    private bool mouseHeldDown = false;
    private Point moveMeOffset = new Point();

    public SomeClass()
    {
        HtmlPage.RegisterScriptableObject("SilverlightObject", this);
    }


    [ScriptableMember]
    public void DoThing(int x)
    {
      //do some stuff
    }
}

次に、JSからこれを呼び出すことができます

document.getElementById("mySilverlightControl").content.SilverlightObject.DoThing(5);
于 2010-07-25T23:02:55.153 に答える