• 
    

    
    

      99热精品在线国产_美女午夜性视频免费_国产精品国产高清国产av_av欧美777_自拍偷自拍亚洲精品老妇_亚洲熟女精品中文字幕_www日本黄色视频网_国产精品野战在线观看

      ?

      ASP.NET中母版頁技術(shù)開發(fā)

      2012-10-10 07:31:58吳金秀
      關(guān)鍵詞:母版控件頁面

      吳金秀

      (黃岡職業(yè)技術(shù)學(xué)院,湖北 黃岡 438000)

      0 引言

      大多數(shù)Web站點(diǎn)都是所有頁面采用一種布局,使整個(gè)網(wǎng)站具有統(tǒng)一的風(fēng)格和外觀,實(shí)現(xiàn)良好的用戶體驗(yàn)。ASP.NET自2.0以后的版本中提供了母版頁技術(shù),可將站點(diǎn)的整體布局在母版中進(jìn)行規(guī)劃與實(shí)現(xiàn),將每個(gè)頁面的公共部分,如網(wǎng)站的logo、banner、版權(quán)聲明等內(nèi)容設(shè)計(jì)到母版頁中,再基于母版頁創(chuàng)建不同的內(nèi)容頁,以實(shí)現(xiàn)Web站點(diǎn)的一致布局與風(fēng)格。

      1 母版頁技術(shù)

      1.1 頁面的組成

      運(yùn)用母版頁技術(shù)的頁面由兩個(gè)部分組成:母版頁和內(nèi)容頁。

      母版頁的文件后綴名為.master,它主要是對整個(gè)站點(diǎn)的整體布局進(jìn)行規(guī)劃與設(shè)計(jì),包含整個(gè)站點(diǎn)的公共部分。內(nèi)容頁的文件類型為.a(chǎn)spx,它設(shè)計(jì)頁面的不同內(nèi)容。當(dāng)用戶請求內(nèi)容頁時(shí),這些內(nèi)容頁與母版頁合并后將母版頁的布局與內(nèi)容頁的內(nèi)容組合在一起輸出。

      1.2 母版頁技術(shù)的優(yōu)勢

      母版頁技術(shù)能很好地實(shí)現(xiàn)界面設(shè)計(jì)的模塊化,降低開發(fā)人員的工作強(qiáng)度,其優(yōu)勢主要包括:

      (1)實(shí)現(xiàn)了代碼的重用,即同一個(gè)母版頁可用于同一站點(diǎn)的不同頁面;

      (2)有利于實(shí)現(xiàn)頁面布局,提供一種便于利用的對象模型;

      (3)有利于站點(diǎn)修改和維護(hù),如果母版頁更新了,所有的網(wǎng)頁都會(huì)隨之更新。

      2 母版頁的工作原理

      母版頁的設(shè)計(jì)與普通頁面的設(shè)計(jì)一樣。它的“源”文件中除包含一個(gè)完整頁面文件的基本元素之外,還包含一個(gè)或幾個(gè)ContentPlaceHolder控件,Content PlaceHolder控件是為內(nèi)容頁預(yù)留的,這樣母版頁的設(shè)計(jì)就是對整個(gè)站點(diǎn)的統(tǒng)一規(guī)劃與設(shè)計(jì)。它相當(dāng)于頁面的模板,方便用戶的規(guī)劃與設(shè)計(jì),但不能獨(dú)立運(yùn)行。

      圖1 母版頁的工作原理

      內(nèi)容頁的設(shè)計(jì)在可視化的界面中,母版頁以水印淡化的形式顯示出來,在內(nèi)容頁中母版頁的內(nèi)容是不可編輯的。內(nèi)容頁的設(shè)計(jì)在Content控件中進(jìn)行,Contnet控件就是與之相對應(yīng)的母版頁的Content Place Holder控件。如圖1所示,母版頁文件 A.master中有兩個(gè)占位符,id分別是“Main”和“Footer”,內(nèi)容A.a(chǎn)spx文件中有兩個(gè)Content控件,Content Place Holder Id 分別為“Main”和“Footer”,分別替換母版頁中id為“Main”和“Footer”的占位符。當(dāng)客戶端瀏覽器向服務(wù)器發(fā)出請求,ASP.NET引擎將同時(shí)執(zhí)行內(nèi)容頁和母版頁的代碼,并將最終結(jié)果發(fā)送到客戶端瀏覽器。

      3 母版頁與內(nèi)容頁的交互

      3.1 在內(nèi)容頁面中訪問母版頁中的控件

      (1)通過內(nèi)容頁P(yáng)age對象有一個(gè)公共屬性Master。

      內(nèi)容頁P(yáng)age對象的屬性Master能夠?qū)崿F(xiàn)對相關(guān)母版頁基類Master Page的引用,由此可以用Master Page實(shí)現(xiàn)對母版頁各個(gè)子對象的訪問,Master Page的Find Control方法找到母版頁中的控件的引用,并返回相應(yīng)Object類型的對象。例如,母版頁有個(gè)Label1控件,在內(nèi)容頁中將Label1中的內(nèi)容顯示在內(nèi)容頁的TextBox1控件中,方法為:

      Text Box1.Text= ((Label)((Master Page)Master).Find Control("Label1")).Text;

      (2)通過Master Type指令創(chuàng)建與內(nèi)容頁相關(guān)的母版頁的強(qiáng)類型引用。

      在使用該指令時(shí),通過設(shè)置Virtual Paht屬性指定一個(gè)與內(nèi)容頁相關(guān)的母版頁的存儲(chǔ)地址。當(dāng)該內(nèi)容頁創(chuàng)建自己的Master屬性時(shí),屬性的值被設(shè)置為引用的母版頁的存儲(chǔ)地址。例如,在母版頁中加一個(gè)id為Label1的標(biāo)簽,并在后臺(tái)代碼中定義具有公共屬性的Label,方法為:

      在內(nèi)容頁面中的“源”文件頭@page后添加Master Type指令<%@Master Type Virtual Path="~/Master Page1.master"%>,在內(nèi)容頁中可以通過Master對象的Master Label屬性來引用母版頁中的Label1控件。如設(shè)置母版頁中的Label1的文本為當(dāng)前時(shí)間,代碼為:

      Master.Master Label.Text= System.Date Time.Now.To String();

      3.2 在母版頁中訪問內(nèi)容頁面的控件

      在母版頁中可以通過在Content Place Holder控件中調(diào)用Find Control方法來取得控件,然后對控件進(jìn)行操作。如將母版頁中Label1中的文本賦值給內(nèi)容頁的Text Box1控件。

      ((Text Box)(this.Content Place Holder1.Find-Control("Text Box1"))).Text=Label1.Text;

      4 總結(jié)

      本文從母版頁運(yùn)行的原理以及母版與內(nèi)容頁面通信的角度,總結(jié)了母版頁技術(shù)的應(yīng)用方法,解決了母版頁使用繁瑣的問題。以編程方式來動(dòng)態(tài)設(shè)置母版頁,使得在Web站點(diǎn)設(shè)計(jì)中,為用戶提供一個(gè)統(tǒng)一的用戶界面與風(fēng)格樣式,并確保內(nèi)容頁和所設(shè)置的母版頁完全兼容。

      [1]神龍工作室.新編ASP.NET 2.0網(wǎng)絡(luò)編程入門與提高[M].北京:人民郵電出版社,2008.

      [2]達(dá)內(nèi)科技.a(chǎn)sp.net母版和內(nèi)容頁執(zhí)行順序[EB/OL].[2011-09-3].http://www.tarenasz.com/tech/net/722.html.

      [3]MSDN.msdn技術(shù)資源庫·ASP.NET母版頁概述[EB/OL].[2012-03-23].http://msdn.microsoft.com/zh-cn/library/wtxbf3hh(v=vs.80).

      猜你喜歡
      母版控件頁面
      刷新生活的頁面
      利用PowerPoint制作多媒體課件
      母版網(wǎng)角對潛像防偽效果的影響
      關(guān)于.net控件數(shù)組的探討
      軟件(2018年7期)2018-08-13 09:44:42
      ASP.NET中母版頁技術(shù)研究
      基于母版頁在ASP.NET網(wǎng)站測試用例設(shè)計(jì)
      就這樣玩會(huì)VBA中常見的自定義控件
      電腦迷(2012年24期)2012-04-29 00:44:03
      同一Word文檔 縱橫頁面并存
      淺析ASP.NET頁面導(dǎo)航技術(shù)
      其實(shí)IE也懂Chrome的心
      顺义区| 怀仁县| 长乐市| 嘉禾县| 公安县| 如东县| 玉林市| 德化县| 岱山县| 南平市| 佛山市| 余庆县| 赤水市| 上饶县| 四子王旗| 娄烦县| 满城县| 西藏| 六安市| 信丰县| 道孚县| 方城县| 伊金霍洛旗| 修文县| 霍邱县| 汕头市| 大庆市| 哈尔滨市| 湖南省| 大洼县| 库车县| 阿城市| 临海市| 长丰县| 莱芜市| 汉沽区| 成都市| 剑川县| 邢台市| 通渭县| 东乌珠穆沁旗|