程序師世界是廣大編程愛好者互助、分享、學習的平台,程序師世界有你更精彩!
首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫知識
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
 程式師世界 >> 編程語言 >> .NET網頁編程 >> ASP.NET >> 關於ASP.NET >> asp.net夜話之八:數據綁定控件(三)

asp.net夜話之八:數據綁定控件(三)

編輯:關於ASP.NET

Repeater控件

Repeater控件的用法類似於DataList控件,只不過它不能在一行顯示多行數據,不過它可以讓我們更靈活地控制數據的顯示樣式。如果Repeater控件中沒有定義模版或者模版中沒有定義要顯示的數據的顯示方式,那麼在運行時該控件在頁面上不會有任何顯示。

Repeater服務器控件支持的模版有ItemTemplate、AlternatingItemTemplate、HeaderTemplate和FooterTemplate及SeparatorTemplate,這些模版的用法類似於DataList中對應的模版的用法。

下面是Repeater控件的用法的例子。

首先在頁面中拖入一個Repeater控件,拖入Repeater控件之後頁面的設計效果如下:

可以看出使用Repeater控件時沒有辦法在設計視圖下編輯控件模版,要編輯控件模版需要切換到源視圖。

在ADO.NET一節筆者展示了如何用Table來顯示數據,具體做法是現在循環之前輸出表頭,然後在利用循環輸出數據集合中的每條數據,最後在循環結束之後輸出table的結束標記。如果在Repeater中想用Table的形式顯示數據,我們的做法是如下:

先在HeaderTemplate模版中定義表頭,然後在ItemTemplate模版或AlternatingItemTemplate模版中定義數據的每條數據的顯示方式,最後在FooterTemplate模版中定義table的結束標記。

下面是前台代碼:

<%@ Page Language="C#" AutoEventWireup="true" CodeFile="RepeaterDemo.aspx.cs" Inherits="RepeaterDemo" %>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" >
<head runat="server">
<title>Repeater服務器控件使用的例子</title>
</head>
<body>
<form id="form1" runat="server">
<div>
<asp:Repeater ID="Repeater1" runat="server">
<HeaderTemplate>
<table border="1" cellpadding="0" cellspacing="0">
<tr><td>編號</td><td>真實姓名</td><td>年齡</td><td>性別</td><td>手機</td><td>電話</td><td>電子郵件</td></tr>
</HeaderTemplate>
<ItemTemplate>
<tr><td><%#Eval("UserID") %></td><td><%#Eval("RealName") %></td><td><%#Eval("Age") %></td><td><%#bool.Parse(Eval("sex").ToString())?"男":"<font color='green'>女</font>" %></td><td><%#Eval("Mobile") %></td><td><%#Eval("Phone") %></td><td><%#Eval("Email") %></td></tr>
</ItemTemplate>
<AlternatingItemTemplate>
<tr><td><input type="text" readonly="readonly" value='<%#Eval("UserId") %>' size="2" /></td><td><%#Eval("RealName") %></td><td><%#Eval("Age") %></td><td><%#bool.Parse(Eval("sex").ToString())?"男":"<font color='green'>女</font>" %></td><td><%#Eval("Mobile") %></td><td><%#Eval("Phone") %></td><td><%#Eval("Email") %></td></tr>
</AlternatingItemTemplate>
<FooterTemplate>
</table>
</FooterTemplate>
</asp:Repeater>
</div>
</form>
</body>
</html>

  1. 上一頁:
  2. 下一頁:
Copyright © 程式師世界 All Rights Reserved