用ASP.NET 2.0 FormView控制項控制顯示

來源:互聯網
上載者:User

ASP.NET 2.0的FormView控制項類似於DetailsView控制項,因為它能方便地顯示 後端資料來源的單個記錄。本文將討論這個控制項的文法和應用。

使用者化

雖然這兩個控制項一次顯示一條記錄,DetailsView和FormView的關鍵差別在於 :FormView利用使用者定義的模板;而DetailsView則使用列欄位。FormView控制項沒 有預先定義資料布局;相反,你建立一個包含控制項的模板來顯示記錄中的單個字 段。模板中包含建立表單所要用到的格式、控制項和綁定運算式。

你可以控制資料記錄以三種形式顯示:編輯、查看和添加一條新記錄。另外 ,你可以包括和格式化標題與頁尾元素。你還可以利用FormView控制項各個部分中 的任何一個有效ASP.NET控制項。

文法

宣稱和使用一個FormView控制項執行個體與宣稱和使用一個DetailsView控制項執行個體非 常相似。它們的主要區別是,因為沒有預設設定可以使用,你必須在FormView控 件中包含顯示資料的格式和模板。列表A顯示了開啟FormView元素標籤的一部分 文法。

你可能已經注意到,許多屬性和HTML表格元素相對應,如標題和邊框。這說 明ASP.NET使用HTML表格來呈現FormView控制項。

你可以通過微軟網站線上查看一個更加全面的FormView控制項屬性列表。下表 列出了一些值得關注的重要屬性。

·AllowPaging:一個說明使用者能否對指定資料來源中的記錄分頁的布爾 值。如果設為真,則在所顯示記錄的底部顯示預設的分頁數字系統(從1到記錄的 數量)。分頁連結可以通過各種分頁屬性自訂。

·DataKeyNames:資料來源的鍵欄位。

·DataSourceID:用來移植FormView控制項資料來源元素ID。如果使用SQL Server,它與分配給SqlDataSource元素的ID對應。

·DefaultMode:允許你指定控制項的預設行為。也就是說,在使用者訪問 時,它最初如何顯示。可能的值包括:ReadOnly、Insert和Edit。

·EmptyDataText:遇到空資料值時顯示的文本。

宣稱FormView控制項時,還必須對它的內容進行相應格式化。它的資料通過模 板顯示。FormView控制項主要使用五個模板:

·ItemTemplate:它控制使用者查看資料時的顯示情況。

·EditItemTemplate:它決定使用者編輯記錄時的格式和資料元素的顯 示情況。在這個模板內,你將使用其它控制項,如TextBox元素,允許使用者編輯值 。

·InsertItemTemplate:與編輯一條記錄相似,這個模板控制允許用 戶在後端資料來源中添加一條新記錄的欄位的顯示。由於輸入了新的值,應該根據 資料的要求允許使用者自由輸入文本或限制某些值。

·FooterTemplate:決定FormView控制項表格頁尾部分顯示的內容,如 果有的話。

·HeaderTemplate:決定FormView控制項表格標題部分顯示的內容,如 果有的話。

這些模板允許你控制綁定到一個FormView控制項的資料的顯示和行為。例如, 列表B中的ASP.NET Web表單串連到標準的Northwind資料庫,允許使用者通過名字 、姓、僱用日期和家庭電話號碼欄位查看、編輯、刪除和添加新的員工記錄。

它使用TextField控制項顯示被編輯或添加的資料,以及只是為了查閱而顯示的 值。ItemTemplate使用CSS格式化表格,而InsertTemplate則使用HTML樣式進行 格式化,到底使用哪種方法由開發人員決定。

註:ASP.NET用Button控制項添加、編輯、刪除和儲存記錄。

在Button控制項中,New的CommandName值將記錄轉換為插入模式並載入 InsertItemTemplate模板,它允許使用者輸入一個新記錄值。你可以用Edit的 CommandName值給ItemTemplate增加一個新按鈕,使FormView控制項進入編輯模式 。

可以給ItemTemplate模板增加一個帶Delete的CommnadName值的按鈕,允許用 戶從資料來源中刪除目前記錄。Update的CommnadName儲存資料,而Cancel終止操 作。

開發人員控制

許多ASP.NET 2.0新功能的易用性令人驚喜。FormView對DetailsView的簡單 功能進行了擴張,允許你根據需要輕鬆控制要格式化的顯示內容。這個新控制項為 你交付解決方案提供另一個選項。

聯繫我們

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