asp.net頁面指令和事件(轉自:http://my.oschina.net/dxf/blog/269)

來源:互聯網
上載者:User

@Page指令  定義頁面屬性

@Page指令允許為ASP.NET頁面(.aspx)指定解析和編譯頁面時使用的屬性和值。這是最常用的指令。ASP.NET頁面是ASP.NET的一個重要部分,所以它有許多屬性。表3-4總結了@Page指令的可用屬性。

表 3-4

屬    性

說    明

AspCompat

若其值為True,就允許頁面在單線程的單元中執行,這個屬性的預設設定是False。

Async

指定ASP.NET頁面是同步或非同步處理

AutoEventWireUp

設定為True時,指定頁面事件自動觸發。這個屬性的預設設定是True

Buffer

設定為True時,支援HTTP響應緩衝。這個屬性的預設設定是True

ClassName

指定編譯頁面時綁定到頁面上的類名

CodeFile

引用與頁面相關的後台編碼檔案

CodePage

指定響應的字碼頁面值

CompilerOptions

編譯器字串,指定頁面的編譯選項

CompileWith

包含一個String值,指向所使用的後台編碼檔案

ContentType

把響應的HTTP內容類型定義為標準MIME類型

Culture

指定頁面的文化設定。ASP.NET 2.0允許把Culture 屬性的值設定為Auto ,支援自動檢測需要的文化

Debug

設定為True時,用偵錯符號編譯頁面

Description

提供頁面的文本描述。ASP.NET解析器忽略這個屬性及其值

EnableSessionState

設定為True時,支援頁面的工作階段狀態,其預設設定是True

EnableTheming

設定為True時,頁面可以使用主題。其預設設定是False.

EnableViewState

設定為True時,在頁面中維護檢視狀態,其預設設定是True

EnableViewStateMac

設定為True時,當使用者回送頁面時,頁面會在檢視狀態上進行機器範圍內的身分識別驗證,其預設設定是False

ErrorPage

為所有未處理的頁面異常指定用於發送資訊的URL

Explicit

設定為True時,支援Visual Basic的Explicit選項。其預設設定是False

Language

定義內建顯示和指令碼塊所使用的語言

LCID

為Web Form的頁面定義本地標識符

LinePragmas

Boolean值,指定得到的程式集是否使用行附註

MasterPageFile

帶一個 String 值,指向頁面所使用的master頁面的地址。這個屬性在內容頁面中使用

MaintainScrollPositionOn
Postback

帶一個Boolean 值,表示在回送頁面時,頁面是位於相同的滾動位置上,還是在最高的位置上重建頁面

PersonalizationProvider

帶一個 String 值,指定把個人化資訊應用於頁面時所使用的個人化提供者名

ResponseEncoding

指定頁面內容的響應編碼

 

(續表)  

屬    性

說    明

SmartNavigation

指定是否為功能更豐富的瀏覽器啟用ASP.NET智能導航功能。它把回送資訊返回到頁面的當前位置,其預設值是False

Src

指向類的源檔案,用於所顯示的頁面的後台編碼

Strict

設定為True時,使用Visual Basic Strict模式編譯頁面,其預設值是False

Theme

使用ASP.NET 2.0的主題功能,把指定的主題應用於頁面

Title

應用頁面的標題。這個屬性主要用於必須應用頁面標題的內容頁面,而不是應用master頁面中指定內容的頁面

Trace

設定為True時,啟用頁面跟蹤,其預設值是False

TraceMode

指定啟用跟蹤功能時如何顯示跟蹤訊息。這個屬性的設定可以是SortByTime 或SortByCategory,預設設定是SortByTime

Transaction

指定頁面上是否支援交易處理。這個屬性的設定可以是NotSupported、Supported、Required和RequiresNew,預設設定是NotSupported

UICulture

UICulture 屬性的值指定ASP.NET 頁面使用什麼UI Culture。 ASP.NET 2.0允許給UICulture屬性使用Auto值,支援自動檢測UICulture

ValidateRequest

設定為True時,根據一組潛在危險的值檢查表單輸入值,協助防止Web應用程式受到有害的攻擊,例如JavaScript攻擊。預設值是True

WarningLevel

指定停止編譯頁面時的編譯警告層級,其值可以是0到4

下面是使用@Page指令的一個樣本:

<%@ Page Language="VB" AutoEventWireup="false" CodeFile="Default.aspx.vb"

    Inherits="_Default" %>

@Master指令 指定主版頁面

@Master指令非常類似於@Page指令,但@Master指令用於master頁面(.master)。在使用@Master指令時,要指定和網站上的內容頁面一起使用的模板頁面的屬性。內容頁面(使用@Page指令建立)可以繼承master頁面上的所有master內容(在master頁面上使用@Master指令定義的內容)。儘管這兩個指令是類似的,但@Master指令的屬性比@Page指令少。@Master指令的可用屬性如表3-5所示。

表 3-5

屬    性

說    明

AutoEventWireUp

設定為True時,指定master頁面的事件是否自動觸發。預設設定為True

ClassName

指定編譯頁面時綁定到master頁面上的類名

CodeFile

引用與頁面相關的後台編碼檔案

(續表)  

屬    性

說    明

CompilerOptions

編譯字串,表示master頁面的編譯選項

CompileWith

帶一個String值,指向用於master頁面的後台編碼檔案

Debug

設定為True時,用偵錯符號編譯master頁面

Description

提供master頁面的文本描述。ASP.NET 解析器會忽略這個屬性及其值

EnableTheming

設定為True時,表示master頁面可以使用主題功能。其預設設定是False

EnableViewState

設定為True時,維護master頁面的檢視狀態。其預設設定是True

Explicit

設定為True時,表示啟用Visual Basic Explicit 選項。其預設設定是False

Inherits

指定master頁面要繼承的CodeBehind類

Language

定義內建顯示和指令碼塊使用的語言

LinePragmas

Boolean值,指定得到的程式集是否使用行附註

MasterPageFile

帶一個String值,指向master 頁面所使用的master頁面的地址。master頁面可以使用另一個master頁面,建立嵌套的master頁面

Src

指向類的源檔案,用於要顯示的master頁面的後台編碼

Strict

設定為True時,使用Visual Basic Strict模式編譯master頁面。其預設設定是False

WarningLevel

指定停止編譯頁面時的編譯警告層級,其值可以是0到4

下面是使用@Master指令的一個例子:

<%@ Master Language="VB" CodeFile="MasterPage1.master.vb"

    AutoEventWireup="false" Inherits="MasterPage" %>

@Control指令   使用者控制項

@Control指令類似於@Page指令,但@Control指令是在建立ASP.NET使用者控制項時使用的。@Control指令允許定義使用者控制項要繼承的屬性。這些屬性值會在解析和編譯頁面時賦予使用者控制項。@Control指令的可用屬性比@Page指令少,但其中有許多都可以在建立使用者控制項時進行需要的修改。表3-6詳細介紹了這些可用屬性。

表 3-6

屬    性

說    明

AutoEventWireUp

設定為True時,指定使用者控制項的事件是否自動觸發。預設設定為True

ClassName

指定編譯頁面時綁定到使用者控制項上的類名

CodeFile

引用與使用者控制項相關的後台編碼檔案

CompilerOptions

編譯字串,表示使用者控制項的編譯選項

CompileWith

帶一個String值,指向用於使用者控制項的後台編碼檔案

Debug

設定為True時,用偵錯符號編譯使用者控制項

(續表)  

屬    性

說    明

Description

提供使用者控制項的文本描述。ASP.NET 解析器會忽略這個屬性及其值

EnableTheming

設定為True時,表示使用者控制項可以使用主題功能。其預設設定是False

EnableViewState

設定為True時,維護使用者控制項的檢視狀態。其預設設定是True

Explicit

設定為True時,表示啟用Visual Basic Explicit 選項。其預設設定是False

Inherits

指定使用者控制項要繼承的CodeBehind類

Language

定義內建顯示和指令碼塊使用的語言

LinePragmas

Boolean值,指定得到的程式集是否使用行附註

Src

指向類的源檔案,用於要顯示的使用者控制項的後台編碼

Strict

設定為True時,使用Visual Basic Strict模式編譯使用者控制項。其預設設定是False

WarningLevel

指定停止編譯頁面時的編譯警告層級,其值可以是0到4

@Control指令用於ASP.NET使用者控制項。下面是使用該指令的一個例子:

<%@ Control Language="VB" Explicit="True"

    CodeFile="WebUserControl.ascx.vb" Inherits="WebUserControl"

    Description="This is the registration user control." %>

@Import指令  匯入指定命名空間

namespace
要匯入頁的命名空間的名稱。這可以包括任何包含在 .NET Framework 中的命名空間或自訂命名空間。
 

@Implements指令 實現指定介面

interface
要在頁或使用者控制項中實現的介面。

<%@ Implements interface="ValidInterfaceName" %>

@Register指令 給命名空間和類名關聯上別名,作為定製伺服器控制項文法中的記號

tagprefix 
與命名空間關聯的別名。 
tagname 
與類關聯的別名。 
Namespace 
與 tagprefix 關聯的命名空間。 
Src 
與 tagprefix:tagname 對關聯的聲明性使用者控制項檔案的位置(相對的或絕對的)。 
Assembly 
與 tagprefix 關聯的命名空間所駐留的程式集。 
注意 程式集名稱不包括副檔名。

<%@ Register tagprefix="tagprefix" Namespace="namespace" Assembly="assembly" %><%@ Register tagprefix="tagprefix" Tagname="tagname" Src="pathname" %>

@Assembly指令  把程式集連結到與他相關的頁面或使用者控制項上

Name
表示要連結到頁的程式集名稱的字串。

注意 程式集名稱不包括副檔名。

Src
要動態編譯和連結的源檔案的路徑。

注意 不能在同一個 @ Assembly 指令中包含 Name 和 Src 屬性。如果您要使用這兩個屬性,頁上必須包含多個指令。

<%@ Assembly Name="assemblyname" %>
<%@ Assembly Src="pathname" %>

@MasterType指令  把類名與頁面關聯,獲得包含在特定master頁面中的強型別化的引用或者成員

 

@MasterType指令把一個類名關聯到ASP.NET頁面上,以獲得特定master頁面中包含的強型別化引用或成員。這個指令支援兩個屬性:

●       TypeName:設定從中獲得強型別化的引用或成員的衍生類別名。

●       VirtualPath:設定從中檢索這些強型別化的引用或成員的頁面地址。

使用@MasterType指令的細節請參閱第8章。下面是它的一個例子:

<%@ MasterType VirtualPath="~/Wrox.master" %>

@OutputCache指令 控制頁面或使用者控制項輸出的快取策略

Duration 
      頁或使用者控制項進行緩衝的時間(以秒計)。在頁或使用者控制項上設定該屬性為來自對象的 HTTP 響應建立了一個到期策略,並將自動快取頁面或使用者控制項輸出。 
注意 該屬性是必需的。如果未包含該屬性,將出現分析器錯誤。
Location 
      OutputCacheLocation 枚舉值之一。預設值為 Any。 
      警告 包含在使用者控制項(.ascx 檔案)中的 @ OutputCache 指令不支援此屬性。
Shared 
      一個布爾值,確定使用者控制項輸出是否可以由多個頁共用。預設值為 false。有關詳細資料,請參見備忘部分。 
注意 包含在 ASP.NET 頁(.aspx 檔案)中的 @ OutputCache 指令不支援此屬性。
VaryByCustom 
      表示自訂輸出緩衝要求的任意文本。如果賦予該屬性的值是 browser,緩衝將隨瀏覽器名稱和主要版本資訊的不同而不同。如果輸入了自訂字串,您必須在應用程式的 Global.asax 檔案中重寫 HttpApplication.GetVaryByCustomString 方法。 
VaryByHeader 
      分號分隔的 HTTP 標題列表,用於使輸出緩衝發生變化。當將該屬性設為多標題時,對於每個指定的標題,輸出緩衝都包含一個請求文檔的不同版本。 
注意 設定 VaryByHeader 屬性在所有 HTTP 1.1 緩衝中啟用快取項目,而不僅限於 ASP.NET 緩衝。使用者控制項中的 @ OutputCache 指令不支援此屬性。
VaryByParam 
      分號分隔的字串列表,用於使輸出緩衝發生變化。預設情況下,這些字串與用 GET 方法屬性發送的查詢字串值對應,或與用 POST 方法發送的參數對應。當將該屬性設定為多參數時,對於每個指定的參數,輸出緩衝都包含一個請求文檔的不同版本。可能的值包括 none、* 和任何有效查詢字串或 POST 參數名稱。 
警告 在輸出緩衝 ASP.NET 頁時,該屬性是必需的。它對於使用者控制項也是必需的,除非已經在使用者控制項的 @ OutputCache 指令中包含了 VaryByControl 屬性。如果沒有包含它,則發生分析器錯誤。如果您不想使緩衝內容隨任何指定參數發生變化,請將該值設為 none。如果要使輸出緩衝根據所有參數值發生變化,請將屬性設定為 *。
VaryByControl 
      一個分號分隔的字串列表,用於更改使用者控制項的輸出緩衝。這些字串代表在使用者控制項中聲明的 ASP.NET 伺服器控制項的 ID 屬性值。
注意 除非已經包含了 VaryByParam 屬性,否則在使用者控制項 @ OutputCache 指令中,該屬性是必需的。ASP.NET 頁中的 @ OutputCache 指令不支援該屬性。
<%@ OutputCache Duration="100" VaryByParam="none" %>

@Reference指令  把頁面或使用者控制項連結到當前的頁面或者使用者控制項上

Page
Web Form頁,ASP.NET 應該在運行時根據它動態編譯和連結當前頁。
Control
使用者控制項,ASP.NET 應該在運行時根據它動態編譯和連結當前頁。
<%@ Reference page | control=" pathtofile" %>

@PrviousPageType  允許asp.net頁面處理應用程式中另一個頁面的回送資訊

 

這個指令用於指定跨頁面的傳送過程起始於哪個頁面。在ASP.NET頁面之間的跨頁面傳送過程詳見後面的“跨頁面傳送”一節和第19章。

@PreviousPageType指令是一個新指令,用於處理ASP.NET 2.0提供的跨頁面傳送新功能。這個簡單的指令只包含兩個屬性TypeName和VirtualPath:

●       TypeName:設定回送時的衍生類別名。

●       VirtualPath:設定回送時所傳送頁面的地址。

 

 

 

asp.net頁面事件

PreInit   預初始化

Init   初始化

InitComplete  初始化完成

PreLoad  預先載入

Load 載入

LoadComplete 載入完成

PreRender  預輸出

PreRenderComplete  輸出完成

Unload  卸載

AbortTransation   終止事務

CommitTransation 提交事務

DataBinding 資料繫結

Disposed  銷毀

Error 錯誤

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在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.