Cách truyền tham số cho một chương trình Silverlight


Để có thể truyền một tham số khởi tạo từ trang web vào cho chương trình Silverlight, các bạn có thể làm theo các bước sau:

Bước 1: Khai báo một tham số initParams cho Silverlight plug-in và truyền vào cho nó một tập các cặp tên-giá trị phân cách bởi dấu phẩy (,). Ví dụ: “key1=value1,key2=value2,key3=value3”

<object type="application/x-silverlight" 
        width="100%" height="100%"> 
  <param name="source" 
         value="ClientBin/SLInitParams.xap"/> 
  <!-- startPage key can have values Page1 or Page2 --> 
  <param name="initParams" 
         value="startPage=Page1" /> 
</object>

Các giá trị được truyền vào cho initParams nên là chữ hoặc số, hiện tại bạn cũng không thể truyền vào các giá trị là dấu bằng (=) hoặc dấu phẩy (,).

Bước 2: Trong hàm sự kiện Startup của Application, bạn có thể lấy ra tham số đã truyền vào thông qua thuộc tính StartupEventArgs.InitParams, thuộc tính này có kiểu IDictionary<string, string>.

// Contents of App.xaml.cs 
private void Application_Startup(object sender, 
                                   StartupEventArgs e) 
{ 
    string startPage = e.InitParams["startPage"]; 
    if (startPage != null && startPage.Equals("Page1")) 
    { 
       // Load Page1 
       this.RootVisual = new Page(); 
    } 
    else 
    { 
       // Load Page2 
       this.RootVisual = new AlternatePage(); 
    } 
}

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out /  Change )

Facebook photo

You are commenting using your Facebook account. Log Out /  Change )

Connecting to %s