Silverlight1.0開發嚮導

來源:互聯網
上載者:User

第一步:在HTML頁面加入Javascript引用
這步主要是要在HTML頁面中插入Silverlight.js和createSilverlight.js這兩個檔案的引用,並建立一個HTML元素來作為silverlight外掛程式的宿主。
Silverlight.js是跨平台瀏覽所需要的一個輔助性檔案,你可以在Silverlight 1.0 SDK的Tools目錄找到。
首先開啟HTML頁面並在<head>部分添加下欄標籤:

Java代碼

  1. <script type="text/javascript" src="Silverlight.js"></script> 
<script type="text/javascript" src="Silverlight.js"></script>

再建立一個空白的createSilverlight.js,我們隨後會用到這個檔案。在你的HTML頁面中同樣也添加這個指令碼的引用,如下:

Java代碼

  1. <script type="text/javascript" src="createSilverlight.js"></script> 
<script type="text/javascript" src="createSilverlight.js"></script>

最後得到這樣一個HTML頁面:

Java代碼

  1. <!DOCTYPE html PUBLIC   
  2. "-//W3C//DTD XHTML 1.0 Transitional//EN"
  3. "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">   
  4. <html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en">   
  5.   <head>   
  6.     <title>A Sample HTML page</title>   
  7.     <script type="text/javascript" src="Silverlight.js"></script>   
  8.     <script type="text/javascript" src="createSilverlight.js"></script>   
  9.   </head>   
  10.   <body>   
  11.   </body>   
  12. </html> 
<!DOCTYPE html PUBLIC  "-//W3C//DTD XHTML 1.0 Transitional//EN"  "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"><html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en">  <head>    <title>A Sample HTML page</title>    <script type="text/javascript" src="Silverlight.js"></script>    <script type="text/javascript" src="createSilverlight.js"></script>  </head>  <body>  </body></html>

第二步 建立HTML宿主要元素和初始化段
在HTML檔案中添加下面三行就可以建立用來呈現Silverlight內容的HTML宿主要元素,

Java代碼

  1. <!-- Where the Silverlight plug-in will go-->   
  2. <div id="mySilverlightPluginHost">   
  3. </div> 
<!-- Where the Silverlight plug-in will go--><div id="mySilverlightPluginHost"></div>

你可以根據需要修改<div>標記的ID。重複上面的步驟就可以在同一頁面內建立多個SilverLight的執行個體,不過要保證ID是唯一的。
建立初始化段:在剛添加的HTML標記之後加入下面的指令碼。

Java代碼

  1. <script type="text/javascript">   
  2. // Retrieve the div element you created in the previous step.
  3.         var parentElement =    
  4.             document.getElementById("mySilverlightPluginHost");   
  5. // This function creates the Silverlight plug-in.
  6.         createMySilverlightPlugin();   
  7. </script> 
<script type="text/javascript">                        // Retrieve the div element you created in the previous step.        var parentElement =             document.getElementById("mySilverlightPluginHost");                // This function creates the Silverlight plug-in.        createMySilverlightPlugin();        </script>

對於頁面中有多個SilverLight執行個體,則需重複上述步驟多次。你可以使用名稱唯一的函數,或者你使用一個函數然後用唯一的ID來作為參數來建立這些執行個體。同時要保證每段指令碼都緊跟在相關的DIV元素之後。
現在我們得到下面的html

Java代碼

  1. <!DOCTYPE html PUBLIC   
  2. "-//W3C//DTD XHTML 1.0 Transitional//EN"
  3. "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">   
  4. <html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en">   
  5.   <head>   
  6.     <title>A Sample HTML page</title>   
  7.     <script type="text/javascript" src="Silverlight.js"></script>   
  8.     <script type="text/javascript" src="createSilverlight.js"></script>   
  9.   </head>   
  10.   <body>   
  11.     <!-- Where the Silverlight plug-in will go-->   
  12.     <div id="mySilverlightPluginHost">   
  13.     </div>   
  14.     <script type="text/javascript">   
  15. // Retrieve the div element you created in the previous step.
  16.         var parentElement =    
  17.             document.getElementById("mySilverlightPluginHost");   
  18. // This function creates the Silverlight plug-in.
  19.         createMySilverlightPlugin();   
  20.     </script>   
  21.   </body>   
  22. </html> 
<!DOCTYPE html PUBLIC  "-//W3C//DTD XHTML 1.0 Transitional//EN"  "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"><html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en">  <head>    <title>A Sample HTML page</title>    <script type="text/javascript" src="Silverlight.js"></script>    <script type="text/javascript" src="createSilverlight.js"></script>  </head>  <body>    <!-- Where the Silverlight plug-in will go-->    <div id="mySilverlightPluginHost">    </div>    <script type="text/javascript">                        // Retrieve the div element you created in the previous step.        var parentElement =             document.getElementById("mySilverlightPluginHost");                // This function creates the Silverlight plug-in.        createMySilverlightPlugin();            </script>  </body></html>

第三步:定義建立函數來初始化外掛程式的執行個體
開啟第一步建立的 createSilverlight.js 並添加下面的JavaScript函數。

Java代碼

  1. function createMySilverlightPlugin()   
  2. {     
  3. Silverlight.createObject(   
  4. "myxaml.xaml",                  // Source property value.
  5.         parentElement,                  // DOM reference to hosting DIV tag.
  6. "mySilverlightPlugin",         // Unique plug-in ID value.
  7.         {                               // Per-instance properties.
  8.             width:'300',                // Width of rectangular region of 
  9. // plug-in area in pixels.
  10.             height:'300',               // Height of rectangular region of 
  11. // plug-in area in pixels.
  12.             inplaceInstallPrompt:false, // Determines whether to display 
  13. // in-place install prompt if 
  14. // invalid version detected.
  15.             background:'#D6D6D6',       // Background color of plug-in.
  16.             isWindowless:'false',       // Determines whether to display plug-in 
  17. // in Windowless mode.
  18.             framerate:'24',             // MaxFrameRate property value.
  19.             version:'1.0' // Silverlight version to use.
  20.         },   
  21.         {   
  22.             onError:null,               // OnError property value -- 
  23. // event handler function name.
  24.             onLoad:null // OnLoad property value -- 
  25. // event handler function name.
  26.         },   
  27. null);                          // Context value -- event handler function name.
      function createMySilverlightPlugin(){      Silverlight.createObject(        "myxaml.xaml",                  // Source property value.        parentElement,                  // DOM reference to hosting DIV tag.        "mySilverlightPlugin",         // Unique plug-in ID value.        {                               // Per-instance properties.            width:'300',                // Width of rectangular region of                                         // plug-in area in pixels.            height:'300',               // Height of rectangular region of                                         // plug-in area in pixels.            inplaceInstallPrompt:false, // Determines whether to display                                         // in-place install prompt if                                         // invalid version detected.            background:'#D6D6D6',       // Background color of plug-in.            isWindowless:'false',       // Determines whether to display plug-in                                         // in Windowless mode.            framerate:'24',             // MaxFrameRate property value.            version:'1.0'               // Silverlight version to use.        },        {            onError:null,               // OnError property value --                                         // event handler function name.            onLoad:null                 // OnLoad property value --                                         // event handler function name.        },        null);                          // Context value -- event handler function name.}

這個指令碼裡包含許多你想定製的參數,比如外掛程式的長寬(也可以用百分比), 包含呈現內容的XAML檔案名稱, 是否使用Windowsless模式。
在同一頁面裡如果有多個Silverlight外掛程式,則要為每一個建立一個新的函數。或者比較簡單的建立一個帶參數的函數,然後根據外掛程式的ID分別調用不同的代碼。
第四部 建立Silverlight呈現內容。
現在HTML檔案已經配置完畢,該建立呈現內容了。
在這個HTML所在的目錄下建立一個名叫"myxaml.xaml"的空白檔案。如果你在上一步使用了不同的檔案名稱,記得與之匹配。
如果SliverLight項目要進行事件處理,或者與代碼動態產生,或者與使用者互動,它需要一些額外的javascript指令碼,並在HTML頁面中添加引用。下面的例子裡我們引用了一個叫my-script.js的指令碼

Java代碼

  1. <script type="text/javascript" src="my-script.js"></script> 
<script type="text/javascript" src="my-script.js"></script>

整個html如下:

Java代碼

  1.   <!DOCTYPE html PUBLIC   
  2. "-//W3C//DTD XHTML 1.0 Transitional//EN"
  3. "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">   
  4. <html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en">   
  5.   <head>   
  6.     <title>A Sample HTML page</title>   
  7.     <script type="text/javascript" src="Silverlight.js"></script>   
  8.     <script type="text/javascript" src="createSilverlight.js"></script>   
  9.     <script type="text/javascript" src="my-script.js"></script>   
  10.   </head>   
  11.   <body>   
  12.     <!-- Where the Silverlight plug-in will go-->   
  13.     <div id="mySilverlightPluginHost">   
  14.     </div>   
  15.     <script type="text/javascript">   
  16. // Retrieve the div element you created in the previous step.
  17.         var parentElement = document.getElementById("mySilverlightPluginHost");   
  18.         createMySilverlightPlugin();   
  19.     </script>   
  20.   </body>   
  21. </html> 
  <!DOCTYPE html PUBLIC  "-//W3C//DTD XHTML 1.0 Transitional//EN"  "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"><html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en">  <head>    <title>A Sample HTML page</title>    <script type="text/javascript" src="Silverlight.js"></script>    <script type="text/javascript" src="createSilverlight.js"></script>    <script type="text/javascript" src="my-script.js"></script>  </head>  <body>    <!-- Where the Silverlight plug-in will go-->    <div id="mySilverlightPluginHost">    </div>    <script type="text/javascript">                        // Retrieve the div element you created in the previous step.        var parentElement = document.getElementById("mySilverlightPluginHost");        createMySilverlightPlugin();            </script>  </body></html>

建立多個外掛程式須知:

    建立多個外掛程式只需要重複上面的2,3,4步驟。
    每個宿主的<div>標籤需要有唯一的標示。
    每一段初始代碼必須緊跟在對應的<div>標籤之後。
    每個外掛程式的ID參數也必須是唯一的。

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.