0

したがって、次のようなActiveXオブジェクト表記を使用してASP.NETWebフォームページに追加したSilverlightコントロールがあります。

<object data="data:application/x-silverlight-2," type="application/x-silverlight-2" width="500" height="48">
    <param name="source" value="/ClientBin/FileUpload.xap?t=<%=DateTime.Now.ToUniversalTime() %>"/>
    <param name="onError" value="onSilverlightError" />
    <param name="background" value="white" />
    <param name="minRuntimeVersion" value="3.0.40818.0" />
    <param name="autoUpgrade" value="true" />
    <asp:Literal ID="SilverlightInitParams" runat="server" />
    <a href="http://go.microsoft.com/fwlink/?LinkID=149156&v=3.0.40818.0" style="text-decoration:none">
        <img src="https://go.microsoft.com/fwlink/?LinkId=161376" alt="Get Microsoft Silverlight" style="border-style:none"/>
    </a>
</object>

コントロール内にボタンがあります。ボタンがクリックされたら、JavaScriptスクリプトを呼び出してほしい。動作させることができるかどうかを確認するには、確実に存在するJavaScript関数を呼び出す必要があります。ただし、何も起こりません。

Silverlightコードは次のようになります。

public partial class FileUploadControl : UserControl
{
    ...

    public FileUploadControl(IDictionary<string,string> parameters)
    {
        ...
        HtmlPage.RegisterScriptableObject("Page", this);

        InitializeComponent();
    }

    private void chooseFileButton_Click(object sender, RoutedEventArgs e)
    {
        HtmlPage.Window.Invoke("showStatus");

        ...
    }

    ...
}

JavaScriptメソッドは次のとおりです。

function showStatus() {
    alert('Test from Silverlight.');
}

何か案は?

4

1 に答える 1

0

.xapファイルが展開ディレクトリにコピーされていませんでした。私は今別の問題を抱えていますが、それが何であるかはよくわかりません。私は今それを調査しています。

于 2012-05-21T21:03:47.780 に答える