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

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

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

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

    軟件測試之Microsoft .NET 框架資源基礎

    發布: 2009-8-17 11:09 | 作者: 不詳 | 來源: 領測軟件測試網 | 查看: 51次 | 進入軟件測試論壇討論

    領測軟件測試網

      // Set form caption from string resource
      this.Text = (string)resman.GetObject("MyString"); // The hard way
      this.Text = resman.GetString("MyString"); // The easy way
    }

    用來查找 .resources 文件的命名方式與命名任何其他種類的資源相同(注意追加到 Resource1.resources 文件中的項目默認命名空間的使用方法),只是 .resources 擴展名是假定的,并且不能包括在名稱中。為了更方便,如果您碰巧將一個 .resx 文件命名為類型名稱,則 .resources 文件和程序集的名稱將從類型確定:

    // Use the type to determine resource name and assembly
    ResourceManager resman = new ResourceManager(this.GetType());

    一旦已經創建了資源管理器的實例,就可以通過使用 GetObject 方法并強制轉換為合適的類型,從而按名稱找到嵌套資源。如果使用 .resx 文件來處理字符串資源,則可以使用 GetString 方法,該方法將執行到 System.String 類型的強制轉換。

    返回頁首
    設計器資源
    缺少用于 .resx 文件的合適的編輯器使它們在使用除字符串資源以外的任何其他資源時非常困難。您不僅必須通過手動編寫代碼才能在運行時輸入數據,而且無法在設計時看見資源的使用情況;例如,窗體的背景圖像。

    幸運的是,設計器再次在這里幫助了我們。如果打開 Visual Studio .NET Solution Explorer,并選擇 Show All Files 按鈕,您將看見每個組件(無論它是窗體、控件還是簡單的組件)都有相應的 .resx 文件。這是為了讓資源與組件的屬性保持關聯,這種關聯是在 Property Browser 中設置的。例如,如果設置窗體的 BackgroundImage 屬性,那么不僅在設計器中窗體將顯示背景圖像,而且窗體的 .resx 文件將包含該圖像的對應項。同樣,如果在相同窗體上設置 PictureBox 控件的 Image 屬性,則 .resx 文件同樣會增大以便包括該資源。這兩項都可以在圖 7 中看到。



    圖 7. 組件的 .resx 文件


    每個組件的 .resx 文件將作為 .resources 文件進行編譯和嵌入,就像已經將您自己的 .resx 文件添加到項目中一樣,這將使資源能夠在運行時被組件使用。除了組件的 .resx 文件中的項之外,設計器還會將代碼添加到 InitializeComponent 中,以便加載組件的資源管理器,并使用從資源獲得的對象來填充組件的屬性:

    namespace ResourcesApp {
      public class Form1 : Form {
        ...
        private void InitializeComponent() {
          ResourceManager resources = new ResourceManager(typeof(Form1));
          ...
          this.pictureBox1.Image =
            (System.Drawing.Bitmap)resources.GetObject("pictureBox1.Image");
          ...
          this.BackgroundImage =
            (System.Drawing.Bitmap)resources.GetObject("$this.BackgroundImage");

          ...
        }
      }
    }

    注意 ResourceManager 對象是使用組件的類型來構造的,該類型用來構造組件的 .resources 資源名稱。還要注意設計器在命名資源時所使用的命名約定。對于組件字段上的屬性,名稱的格式是:

    <fieldName>.<propertyName>

    對于組件本身的屬性,名稱格式是:

    $this.<propertyName>

    如果您想添加供組件本身使用的自定義字符串屬性,您可以這樣做,但要確保與設計器生成的名稱格式不同。

    返回頁首
    我們所處的位置
    Microsoft .NET 框架支持兩種資源 — 無類型清單資源和有類型資源。通過將文件的 Build Action 設置為 Embedded Resource,可以讓 Visual Studio .NET 支持無類型清單資源,并通過 .resx 文件(可以是自定義文件或作為組件資源的備份存儲)支持有類型資源。清單資源的好處是,它們可在 IDE 中直接編輯,而有類型資源需要做特別的工作才能編輯,但可提供有類型訪問。兩種資源類型都有某些嚴格的命名要求,所以在編寫方法調用來加載它們時要格外小心。

    注 該材料摘自即將發表的 Addison-Wesley 標題:Windows Forms Programming in C#,作者是 Chris Sells (0321116208)。請注意,這里提供的材料是將要出版的書籍中的一部分初始草稿。

    Chris Sells 是獨立顧問、演講人和作者,他專門研究 .NET 和 COM 中的分布式應用程序。他已經編寫了幾部書,目前正在編寫 Windows Forms for C# and VB.NET Programmers 和 Mastering Visual Studio .NET。業余時間,Chris 主持各種會議,指導 Genghis 可用源項目,并和 Rotor 交流,通常他會參加 Microsoft 設計審查會議。有關 Chris 及其各種項目的詳細信息,可從站點 http://www.sellsbrothers.com 獲得。

    文章來源于領測軟件測試網 http://www.kjueaiud.com/

    77/7<1234567

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