• <ruby id="5koa6"></ruby>
    <ruby id="5koa6"><option id="5koa6"><thead id="5koa6"></thead></option></ruby>

    <progress id="5koa6"></progress>

  • <strong id="5koa6"></strong>
    • 軟件測試技術
    • 軟件測試博客
    • 軟件測試視頻
    • 開源軟件測試技術
    • 軟件測試論壇
    • 軟件測試沙龍
    • 軟件測試資料下載
    • 軟件測試雜志
    • 軟件測試人才招聘
      暫時沒有公告

    字號: | 推薦給好友 上一篇 | 下一篇

    Visual Studio 2010中Silverligh實現頁面動態裝配(1)

    發布: 2010-3-26 11:14 | 作者: 不詳 | 來源: 領測軟件測試網采編 | 查看: 32次 | 進入軟件測試論壇討論

    領測軟件測試網

      Visual Studio 2010中Silverligh實現頁面動態裝配(1)  軟件測試 

       .NET 4.0中提供了一個MEF框架用于開發支持插件的軟件系統,幸運的是,Silverlight 4也支持MEF,這就使得我們可以很容易地實現頁面的動態裝配功能。

      .NET 4.0中提供了一個MEF框架用于開發支持插件的軟件系統,幸運的是,Silverlight 4也支持MEF,這就使得我們可以很容易地實現頁面的動態裝配功能。

      用戶在訪問Silverlight應用程序時,開始可以只顯示一個“初始的簡單的”頁面,當用戶需要時,動態從Web網站上下載新的程序集,然后,Silverlight客戶端應用程序再使用MEF將動態下載的程序集中所包容的頁面組件“組裝”為一個新的功能增強了的頁面,示例解決方案DynamicComposePage展示了相關的技術細節。下面簡要介紹一下其開發步驟。

      1 使用Visual Studio 2010創建一個名為DynamicComposePage的Silverlight Business Application項目,Visual Studio 2010將會幫助我們創建一個名為DynamicComposePage.Web的ASP.NET網站,它引用名為DynamicComposePage的Silverlight項目。

      在解決方案資源管理器中展開DynamicComposePage項目節點,在其Views文件夾下可以看到Visual Studio 2010生成的一個Home.xaml頁面,等一會我們將修改此頁面實現頁面的動態裝配。

      2 現在需要提供一個MEF部件都遵循的接口,為此,向解決方案中添加一個“Silverlight類庫(Silverlight Class Library)”項目[1]MyPartContract,并向其中添加一個IMyPart接口,為簡單起見,本例不為此接口添加任何成員,當然,在實際開發中可以依據需要為其添加合適的成員。

      namespace MyPartContract { public interface IMyPart { } }

      注意:這不是普通的“類庫”項目,Silverlight所使用的程序集是重新編寫的,與標準的.NET Framework不一樣。

      3 下面定義可供動態組合的Silverlight頁面組件。

      向示例解決方案中添加一個名為“MyPageParts”的“Silverlight類庫(Silverlight Class Library)”項目,注意在彈出的對話框中選擇“Silverlight 4”。然后,向MyPageParts項目中添加一個“Silverlight User Control”,取名“MyEditorControl”,在這個頁面中我們將放置一個RichTextArea控件充當文字編輯器:

      

      現在,需要讓此用戶控件可以被MEF動態裝配,為此,需要完成兩個步驟:

      (1)給本項目(也包括前面創建的Silverlight項目DynamicComposePage)都添加對包容了IMyPart接口的Silverlight類庫MyPartContract的引用。

      (2)給本項目(也包括前面創建的Silverlight項目DynamicComposePage)都添加對MEF核心程序集System.ComponentModel.Composition.dll的引用,將要負責完成“裝配”工作的Silverligh項目DynamicComposePage還需要添加對另一個核心程序集System.ComponentModel.Composition.Initialization.dll的引用。注意:在以下位置才能找到上述程序集:C:\Program Files\Microsoft SDKs\Silverlight\v4.0\Libraries。下面是支持MEF動態裝配的Silverlight 4用戶控件的相應代碼,注意其中的“[Export]”標記:

    Silverlight 4用戶控件

      [Export(typeof(IMyPart))] public partial class MyEditor : UserControl,IMyPart { public MyEditor() { InitializeComponent(); } }

      4 現在開發進行“動態裝配”的Silverlight頁面(位于DynamicComposePage項目Views文件夾中的Home.xaml),在頁面上放置一個Button用于啟動裝配過程,另一個TextBlock用于顯示提示信息,更重要地,放置一個ContentControl作為部件容器,用于顯示動態裝配出來的頁面部件:

       ……


    關于領測軟件測試網 | 領測軟件測試網合作伙伴 | 廣告服務 | 投稿指南 | 聯系我們 | 網站地圖 | 友情鏈接
    版權所有(C) 2003-2010 TestAge(領測軟件測試網)|領測國際科技(北京)有限公司|軟件測試工程師培訓網 All Rights Reserved
    北京市海淀區中關村南大街9號北京理工科技大廈1402室 京ICP備2023014753號-2
    技術支持和業務聯系:info@testage.com.cn 電話:010-51297073

    軟件測試 | 領測國際ISTQBISTQB官網TMMiTMMi認證國際軟件測試工程師認證領測軟件測試網

    老湿亚洲永久精品ww47香蕉图片_日韩欧美中文字幕北美法律_国产AV永久无码天堂影院_久久婷婷综合色丁香五月

  • <ruby id="5koa6"></ruby>
    <ruby id="5koa6"><option id="5koa6"><thead id="5koa6"></thead></option></ruby>

    <progress id="5koa6"></progress>

  • <strong id="5koa6"></strong>