二、ASP.NET 伺服器控制項(草本)

來源:互聯網
上載者:User

二、ASP.NET 伺服器控制項

可以添加到 ASP.NET 頁面上的控制項有三種類型:
    ● HTML 伺服器控制項:也就是 HTML 標籤,位於 System.Web.UI.HtmlControls 命名空間。
    ● Web 伺服器控制項:提供統一的編程模型、包含方法以及現關的時間處理常式,並且代碼都在伺服器端執行。位於 System.Web.UI.WebControls 命名空間中。
    ● 定製控制項和使用者控制項:由開發人員定製的控制項。

    我們添加的所有伺服器控制項都會自動成為物件模型的一部分,該物件模型是在這段後置代碼中為表單構建的。基本上,Web Form上控制項的狀態資訊(包括文字框中的輸入資料、下拉式清單中的選項等)儲存在隱藏的 viewstate 欄位中,這個欄位是伺服器產生頁面的一部分,並傳送給使用者。在複雜的表單上,會產生很多的 viewstate 值,可以禁用不需保留狀態資訊的控制項 Viewstate,也可以禁用整個頁面的 Viewstate,有助於提高效能。

    修改過的 .aspx.cs 檔案可以不用再次手工編譯,就可以顯示其改變的資訊(?)。

一、Crystal Reports(Crystal 報表伺服器控制項)
    可以在 Web 頁面上顯示 Crystal 報表資訊。

二、Standard(標準 Web 伺服器控制項)
Label:顯示簡單文本,使用 Text 屬性設定和編程修改顯示的文本。

TextBox:提供一個使用者可以編輯的文字框,支援 AutoPostBack 屬性在修改常值內容後自動回送;支援 TextChanged 事件。

Button:使用者單擊的標準按鈕。支援 Click 事件;支援 Command 事件訪問接收的附加屬性 CommandName 和 CommandArgument。
   
LinkButton:與 Button 相同,但把按鈕顯示為超連結。

ImageButton:顯示一個映像,其屬性和事件繼承了 Button 和 Image。

HyperLink:添加一個 HTML 超連結,NavigateUrl 屬性設定超連結;ImageUrl 屬性指定替換文本的圖片;Target 屬性指定開啟視窗方式。

DropDownList:允許使用者選擇一個清單項目,使用屬性 Items 設定清單項目(一個 ListItem 集合);SelectedItem 和 SelectedIndex 屬性確定選擇的內容;支援 SelectedIndexChanged 事件可以用於確定選項是否改變;支援 AutoPostBack 屬性。

ListBox:允許使用者選擇一個或多個列表。把 SelectionMode 設定為 Muliple 或 Single 可以確定一次選擇多少選項;Rows 確定要顯示選項個數;其他選項與 DropDownList 控制項相同。

CheckBox:顯示一個複選框,選擇的狀態在 Checkted 屬性中;文本在 Text 屬性;支援 AutoPostBack 屬性;支援 CheckedChanged 事件。

CheckBoxList:建立一組複選框,屬性和事件可參照 DropDownList。

RadioButton:顯示一個選項按鈕,使用 GroupName 屬性可以把 RadioButton 控制項連結到一個組中,其他屬性與事件與 CheckBox 相同。

RadioButtonList:建立一組選項按鈕,其屬性與事件類別同於其他清單控制項。

Image:顯示一個映像。使用 ImageUrl 進行映像索引,如果映像載入失敗則顯示 AlternateText 對應的文本。

ImageMap:類似於 Image,但支援 HotSpot 控制項提供的熱區功能重新導向到不同的頁面。

Table:指定一個表,可設定 TableRow 和 TableCell,或者 TableRow 的集合類屬性指定資料行。

BulletedList:把一個選項列表格式化為一個項目符號清單,可以有不同的顯示格式,支援 Click 事件確定使用者回送的選項;<ol>...</ul>,<ul>...</ul>。

HiddenField:用於提供隱藏的欄位,以儲存不同的值。這個控制項可儲存需要另一種儲存機制才能發揮作用的設定。使用 Value 屬性訪問儲存的值。

Literal:執行與 Label 相同的功能,但沒有樣式屬性,只有一個 Text 屬性。

Calendar:允許使用者從映像日曆中選擇一個日期。準系統是 SelectedDate 和 VisibleDate 屬性。

AdRotator:廣告流轉板,順序顯示幾個映像,使用 AdvertisementFile 屬性指定描述映像的 XML 檔案;支援 AdCreated 事件。

FileUpload:提供使用者選擇並上傳檔案,支援 HasFile 屬性,支援後台代碼的 SaveAs() 方法執行檔案上傳。

Wizard:使用者簡化使用者在幾個頁面中輸入資料的常見任務,可以給嚮導添加多個步驟,按順序或不按順序顯示,並依賴此控制項來維護狀態。

Xml:複雜的文本顯示控制項,用於顯示用 XSLT 樣式傳輸的 XML 內容。

MultiView:包含一個或多個 View 控制項,每次只顯示一個 View 控制項。可用 ActiveViewIndex 屬性指定當前;如果視圖改變會觸發 ActiveViewChanged 事件。
Panel:添加其他控制項的容器。可以使用 HorizontalAlign 和 Wiap 指定內容如何安排。

View:控制項的容器,類似於 PlaceHolder,但主要作用於 MulitView 的子控制項,支援 Activate 和 Deactivate 事件檢測啟用狀態的變化。

Substitution:指定一組不與其他輸出一起快取的 Web 頁面。

Location:與 Literal 相同,但允許使用項目資源指定要在不同地區顯示的文本,使文本本地化。

三、Data(資料 Web 伺服器控制項)
  資料 Web 伺服器控制項分為兩類:
    ● 資料來源控制項:實現從不同資料來源擷取資料的功能,最好通過圖形化的嚮導來配置屬性。分為兩類:
System.Web.UI.DataSource(普通資料來源控制項)

ObjectDataSource:可以處理儲存在自己建立的對象中的資料,能在 ASP.NET 中快捷顯示定製的物件模型。

SqlDataSource:使用和操作 SQL Server 資料庫中儲存的資料管道,返回的對象是 DataSet。

AccessDataSource:使用和操作 Access 資料庫中儲存的資料管道。

System.Web.UI.HierarchicalDataSource(層次化資料來源控制項)
XmlDataSource:處理階層化的資料,可以綁定導航控制項,還可以使用 XSL 樣式表傳輸 XML 資料。

SiteMapDataSource:可以綁定到層次網站地圖資料上。

   
    ● 資料顯示控制項

GridView:以資料行的格式顯示多個資料項目(例如資料庫中的行),利用這個控制項的屬性,可以選擇、排序和編輯資料項目。

DataList:顯示多個資料項目,可以為每一項提供模板,以任意指定的方式顯示資料欄位,可以選擇、排序和編輯資料項目。

DetailsView:顯示單條資料項目的詳細欄位,可以添加、編輯和刪除資料項目。

FormView:使用模板顯示一個資料項目,可以添加、編輯和刪除資料項目。

Repeater:類似於 DataList,但是不能選擇和編輯資料。

RepeaterViewer:顯示報表格服務資料的進階控制項。

四、Validation(驗證 Web 伺服器控制項)
    驗證控制項可以在不編寫代碼的前提下驗證使用者輸入,還可以自動給使用者輸出有協助的提示,甚至還可以產生用戶端的 JavaScript 函數來簡化驗證任務的執行。

    驗證控制項只要有回送,每個驗證控制項就會檢查控制項是否有效,並相應地改變 IsValid 屬性的值。如果頁面中任何一個有效性驗證控制項不通過驗證,那整個頁面的 IsValid 屬性為 false。另外,儲存在 ErrorMessage 中的文本可以在驗證控制項所在位置輸出(Display 屬性),也可以和其他頁面上的驗證控制項一起輸出在一個獨立的位置(使用 ValidationSummary 控制項)。ControlToValidate 屬性用於指定要驗證的控制項的編程ID。

RequiredFieldValidator:對輸入控制項的非空驗證。

CompareValidator:檢查輸入的資料是否滿足簡單的要求。利用一個運算集合,通過 Operator 和 ValueToCompare 屬性進行驗證。Operator 設定比較子 >、<、= ; ValueToCompare 用於比較的值;還有 Type 用於設定比較的類型;最後還是對另一控制項進行比較 ControlToCompare 屬性。

RangeValidator:驗證輸入資料 MaximumValue 和 MinimumValue 間的範圍,Type 指定其驗證的資料類型。

RegularExpressionValidator:根據儲存在 ValidationExpression 中的Regex驗證欄位的內容。

CustomValidator:使用定製函數驗證控制項的資料,自訂驗證。ClientValidationFunction 使用者佈建用戶端驗證的指令碼函數;ServerValidate 事件指定伺服器驗證資料的方法。

ValidationSummary:為所有設定了 ErrorMessage 的驗證控制項顯示驗證錯誤。通過 DisplayMode 和 HeaderText 屬性使其顯示的內容可以格式化;ShowSummary 屬性設定是否顯示;ShowMessageBox 屬性設定是否彈出對話方塊顯示資訊。

五、Navigation (導航 Web 伺服器控制項)

SiteMapPath:顯示路徑樣式的資訊,允許使用者產看他們在網站結構中的位置,並導航到父地區中。

Menu:支援靜態或動態樣式的菜單導航網站。

TreeView:可以在樹形結構中顯示層次化資料。樹中的節點儲存在 Nodes 屬性中,選中的節點儲存在 SelectedNode 中,支援 SelectedNodeChanged 和 TreeNodeCollapsed 事件。

    根目錄下的網站地圖 Web.sitemap XML 檔案包含一個<siteMap>元素,這個跟元素包含一個<siteMapNode>元素,<siteMapNode>元素可以包含多個嵌套的<siteMapNode>元素。每個跟元素都包含下列屬性 title、url、roles、description 屬性。

    添加控制項時將使用預設的提供者和當前的 URL 位置,格式化父頁面的連結清單。如果使用定製的提供者,可以通過 SiteMapProvider 屬性指定提供者ID,還可以使用 StartingNodeOffset 刪除菜單資料的上一層(例如根級的 Home 項);“資料來源控制項”的 ShowStartingNode 屬性選定是否刪除頂級連結;使用 StartFromCurrentNode 屬性指定是否從當前位置開始;使用 StringNodeUrl 會重寫根節點。
地圖

    預設提供者會忽略 roles 屬性,這種定製將在 Web.config 檔案的 securityTrimmingEnable 屬性設定為目前使用者允許查看的節點提供資料,這種可見度是由使用者的角色成員決定的。

聯繫我們

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