熱點推薦:
您现在的位置: 電腦知識網 >> 編程 >> .NET編程 >> 正文

在ASP.NET 3.5中使用新的ListView控件[1]

2013-11-13 10:57:01  來源: .NET編程 

  ASPNET中新的ListView控件為顯示和CURD數據庫操作提供了基於模板的布局使之成為一項極好的方式建立以數據為中心的Web應用程序

  當你編寫以用戶為中心的應用程序時總需要某種形式的數據集起碼來說你需要從一個數據源如關系數據庫或XML文件檢索數據在顯示給用戶之前先要進行格式化盡管ASPNET之前的版本就提供了以數據為中心的顯示控件如GridView這些控件缺乏專業Web開發人員需要的可自定義和可擴展特性為了解決這個問題ASPNET提供了一個新的控件ListView它提供了非常優秀的自定義和擴展特性使用這些特性你可以以任何格式顯示數據使用模板和樣式同時用最少的代碼執行CURD(創建讀取更新刪除)操作

  本文主要集中於使用新的ListView控件時數據訪問步驟同時還包括高級特性如編輯數據和處理事件

  ListView控件入門

  ASPNET提供的大部分數據綁定控件都是使用額外的標記自動封裝顯示數據舉例來說GridView控件在一個HTML表格(<table>)中顯示它的數據每條記錄顯示一行(<tr>)每個字段顯示為一個單元格(<td>)雖然你可以使用TemplateField組件自定義GridView的外觀但GridView的輸出仍然是限制在一個table組件中的但有時候你想要完全控制由數據綁定控件產生的HTML標記的外觀這正是ListView控件的優勢ListView控件不是使用額外的標記來封裝它的輸出內容而是靠你指定的精確的HTML描述使用ListView控件內置的模板就可以指定精確的標記列出了ListView控件支持的模板

模板

用途

AlternatingItemTemplate

交替項目模板

用不同的標記顯示交替的項目便於查看者區別連續不斷的項目

EditItemTemplate

編輯項目模板

控制編輯時的項目顯示

EmptyDataTemplate

空數據模板

控制ListView數據源返回空數據時的顯示

EmptyItemTemplate

空項目模板

控制空項目的顯示

GroupSeparatorTemplate

組分隔模板

控制項目組內容的顯示

GroupTemplate

組模板

為內容指定一個容器對象如一個表行div或span組件

InsertItemTemplate

插入項目模板

用戶插入項目時為其指定內容

ItemSeparatorTemplate

項目分隔模板

控制項目之間內容的顯示

ItemTemplate

項目模板

控制項目內容的顯示

LayoutTemplate

布局模板

指定定義容器對象的根組件如一個tablediv或span組件它們包裝ItemTemplate或GroupTemplate定義的內容

SelectedItemTemplate

已選擇項目模板

指定當前選中的項目內容的顯示


  最關鍵的兩個模板是LayoutTemplate和ItemTemplate正如名字暗示的那樣LayoutTemplate為ListView控件指定了總的標記而ItemTemplate指定的標記用於顯示每個綁定的記錄例如下面的代碼顯示了在ListView中由HTML table控制的一串項目

<asp:ListView ID= runat=server DataSourceID=>
<LayoutTemplate>
<table ……>
<tr runat=server ID=itemPlaceholder></tr>
</table>
</LayoutTemplate>
<ItemTemplate>
<tr>
<td><%# Eval(Name) %></td>
</tr>
</ItemTemplate>
</asp:ListView>

  在前面的代碼中LayoutTemplate標記內的<tr>標記的ID是設置項目占位符(itemPlaceHolder)它告訴ListView通過<table>內的ItemTemplate產生的內容要放到什麼地方這就是為什麼你需要單獨定義LayoutTemplate和ItemTemplate模板的原因

[]  []  []  []  


From:http://tw.wingwit.com/Article/program/net/201311/14845.html
    Copyright © 2005-2013 電腦知識網 Computer Knowledge   All rights reserved.