ASP.NET立即上手教程(5)_.Net教程

      編輯Tag賺U幣
      教程Tag:暫無Tag,歡迎添加,賺取U幣!

      推薦:ASP.NET立即上手教程(4)
      聲明服務(wù)器控件 ASP.NET服務(wù)器控件使用包含runat="server" 屬性的說明標(biāo)志來聲明。下面的例子聲明了3個<asp:label runat="server">服務(wù)器控件,并且分別定制了文本

      應(yīng)用樣式到HTML服務(wù)器控件

      WEB是一個靈活的用戶接口環(huán)境,不同的站點(diǎn)在視覺和感覺上極盡變化之能事。層疊式樣式表(CSS)的廣泛應(yīng)用,極大的豐富了WEB的設(shè)計(jì)。所有ASP.NET的HTML服務(wù)器控件和WEB服務(wù)器控件,已經(jīng)被設(shè)計(jì)為能夠提供一流的CSS樣式支持。這一部分討論如何應(yīng)用樣式到服務(wù)器控件,并且演示服務(wù)器控件在WEB FORMS中所提供的精細(xì)的外觀控制。

      應(yīng)用樣式到 HTML服務(wù)器控件

      標(biāo)準(zhǔn)的HTML標(biāo)簽通過STYLE屬性來支持CSS,STYLE屬性由一系列成對出現(xiàn)的以分號分割的 屬性/值 來定義。例如{font: 12pt verdana; font-weight:700;color:orange;}。關(guān)于IE瀏覽器對CSS屬性支持的更多信息,請參考MSDN Web Workshop的 CSS Attributes Reference 頁面。所有ASP.NET的 HTML服務(wù)器控件,都可以像標(biāo)準(zhǔn)HTML標(biāo)志那樣,接受CSS樣式。下面的例子說明了把一些樣式應(yīng)用到不同的HTML服務(wù)器控件。如果你察看返回給客戶端的源程序,你就會發(fā)現(xiàn)這些在控件中引用的樣式送到了客戶端。

      CSS也定義了CLASS屬性,通過在文檔中包含<style>...</style>來設(shè)置CSS樣式 。這個屬性的優(yōu)點(diǎn)是僅需要定義一次,就可以應(yīng)用到不同的標(biāo)簽上,而不需要重新定義標(biāo)簽本身的樣式。HTML服務(wù)器控件的樣式也可以用這種方式管理。請看下面的例子:

      當(dāng)ASP.NET頁面被解析的時候,樣式信息就被組裝到了System.Web.UI.HtmlControls.HtmlControl 類上的STYLE屬性上(類型是CssStyleCollection)。該屬性建立一個字典,以字符串索引的集合中的值,填充應(yīng)用控件樣式的每一個樣式屬性值。例如,你可以使用下面的代碼設(shè)置和取回HtmlInputText服務(wù)器控件的width樣式屬性值。

      以下為引用的內(nèi)容:
      <script language="C#" runat="server" >
      void Page_Load(Object sender, EventArgs E) {
      MyText.Style["width"] = "90px";
      Response.Write(MyText.Style["width"]);
      }
      </script>
      <input type="text" id="MyText" runat="server"/>

      下面的這個例子,向你展示如何使用Style集合屬性,通過程序來操縱HTML服務(wù)器控件的樣式

      應(yīng)用樣式到WEB服務(wù)器控件

      WEB服務(wù)器控件對樣式提供了額外的支持級別,即對于常用的樣式設(shè)置,增加了幾個強(qiáng)類型屬性。常用的樣式包括背景色、前景色、字體名稱和大小、寬度、字體加重等等。這些樣式屬性作為HTML中可以使用的樣式行為的子集,并且作為“平臺”屬性,在System.Web.UI.WebControls.WebControl基類中直接擴(kuò)展。使用這些屬性的好處在于,在開發(fā)工具,例如VS.NET中,他們提供了編譯時類型檢查和狀態(tài)完成。

      下面的例子顯示了一個應(yīng)用了若干樣式的日歷控件(作為對照,同時包含了一個沒有使用樣式的日歷控件)。注意當(dāng)你設(shè)置一個類類型的屬性,例如Font,你需要使用子屬性語法 屬性名稱-子屬性名稱。

      名稱空間System.Web.UI.WebControls包含Style基類,可以封裝常用的樣式屬性(其他的樣式類,例如TableStyle 和 TableItemStyle,都是從這個基類繼承而來)。

      許多服務(wù)器控件擴(kuò)展了這個類型的屬性,用來指定該控件分支元素的樣式。例如,日歷控件擴(kuò)展了許多樣式屬性:DayStyle, WeekendDayStyle, TodayDayStyle, SelectedDayStyle, OtherMonthDayStyle, 和 NextPrevStyle等等。你可以使用子屬性語法 屬性名稱-子屬性名稱來設(shè)置這些樣式的分支屬性,如下面的例子:

      一個細(xì)微的差別語法,允許聲明每一個Style 屬性,作為子元素嵌套在web服務(wù)器控件標(biāo)簽中。

      以下為引用的內(nèi)容:
      <ASP:Calendar ... runat="server">
      <TitleStyle BorderColor="darkolivegreen" BorderWidth="3"
      BackColor="olivedrab" Height="50px" />
      </ASP:Calendar>

      下面的例子展示了交替顯示語法,但是功能上與前一個一樣。

      如同處理HTML服務(wù)器控件一樣,你可以使用CSS類定義來應(yīng)用樣式到WEB服務(wù)器控件。WebControl基類擴(kuò)展了一個String屬性,名叫CssClass,用來設(shè)置樣式類:

      如果設(shè)置到服務(wù)器控件的屬性不符合該控件的任何強(qiáng)類型屬性,那么這個屬性和值就會被放到該控件的Attributes集合中。默認(rèn)的情況下,服務(wù)器控件將會不加修改的引用這些屬性返回到發(fā)出請求的瀏覽器客戶端。這就意味著,樣式和類的屬性可以直接應(yīng)用在服務(wù)器控件,而不使用這些控件的強(qiáng)類型屬性。當(dāng)然了,明白這個概念需要理解控件的實(shí)際引用,他同樣是一個應(yīng)用樣式的靈活的方式。對于標(biāo)準(zhǔn)的表單輸入控件,這個方法特別有用。請看下面的例子:

      通過使用WebControl基類的ApplyStyle方法,WEB服務(wù)器控件的樣式也能用程序來設(shè)置,就象下面這段代碼:

      以下為引用的內(nèi)容:
      <script language="C#" runat="server">
      void Page_Load(Object Src, EventArgs E ) {
      Style style = new Style();
      style.BorderColor = Color.Black;
      style.BorderStyle = BorderStyle.Dashed;
      style.BorderWidth = 1;
      MyLogin.ApplyStyle (style);
      MyPassword.ApplyStyle (style);
      MySubmit.ApplyStyle (style);
      }
      </script>
      Login: <ASP:TextBox id="MyLogin" runat="server" />/<p/>
      Password: <ASP:TextBox id="MyPassword" TextMode="Password" runat="server" />
      View: <ASP:DropDownList id="MySelect" runat="server"> ... </ASP:DropDownList>

      本章小節(jié):

      1. ASP.NET的 HTML 服務(wù)器控件和 Web 服務(wù)器控件家族提供了一流的CSS樣式支持。

      2. 可以通過設(shè)置控件的樣式或者類屬性來應(yīng)用樣式。這些設(shè)置可以通過控件的Attributes集合用程序來訪問。對于HTML服務(wù)器控件,樣式屬性的分支值可以通過控件的Style集合來獲取。

      3. 大多數(shù)常用的樣式設(shè)置已經(jīng)作為WEB服務(wù)器控件自身的強(qiáng)類型屬性

      4. System.Web.UI.WebControls 名稱空間包含Style 基類,封裝了常用的類型屬性。許多Web 服務(wù)器控件擴(kuò)展了這個屬性,作為分支引用元素。

      5. 對于服務(wù)器控件,使用 WebControl 基類的ApplyStyle方法可以用程序來設(shè)置樣式。

      分享:ASP.NET立即上手教程(3)
      處理服務(wù)器控件事件 每一個asp.net服務(wù)器控件都具有對象模型的特點(diǎn),包含屬性、方法和事件。Asp.net開發(fā)者可以使用這個對象模型來動態(tài)修改頁面,以及與頁面交互。 下面的例子演示了asp.net

      來源:模板無憂//所屬分類:.Net教程/更新時間:2008-08-22
      相關(guān).Net教程