簡體   English   中英

加載Silverlight小程序后,如何觸發JavaScript執行?

[英]How can I trigger JavaScript to execute after a Silverlight applet loads?

我正在一個項目中,我在JavaScript和托管代碼之間進行了大量交互。 實際上,我需要JS應用程序從一開始就與頁面中的Silverlight應用程序接口。 因此,我需要在執行JS代碼之前先加載Silverlight應用程序。

但是這樣做的時候,大多數時候我會得到一個錯誤,即未加載對象,因為尚未加載Silverlight應用程序。 因此,在執行JS之前,我需要先加載Silverlight。

有沒有辦法我可以停止JS應用程序,直到Silverlight加載然后開始執行?

首先,您需要向應用程序的Loaded事件添加事件處理程序,可以從該事件處理程序中調用javascript函數,如下所示:

using System.Windows.Browser;

namespace SilverlightApplication3
{
    public partial class MainPage : UserControl
    {
        public MainPage()
        {
            InitializeComponent();
            this.Loaded += new RoutedEventHandler(MainPage_Loaded);
        }
    void MainPage_Loaded(object sender, RoutedEventArgs e)
    {
        HtmlPage.Window.CreateInstance("SomeFunction", new string[] { "parameter1", "parameter2" });
    }
}

}

請注意,您需要System.Windows.Browser命名空間才能使用HtmlPage

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM