亚洲香蕉成人av网站在线观看_欧美精品成人91久久久久久久_久久久久久久久久久亚洲_热久久视久久精品18亚洲精品_国产精自产拍久久久久久_亚洲色图国产精品_91精品国产网站_中文字幕欧美日韩精品_国产精品久久久久久亚洲调教_国产精品久久一区_性夜试看影院91社区_97在线观看视频国产_68精品久久久久久欧美_欧美精品在线观看_国产精品一区二区久久精品_欧美老女人bb

首頁 > 編程 > .NET > 正文

Repeater與ListView功能概述及使用介紹

2024-07-10 13:17:23
字體:
來源:轉載
供稿:網友

Repeater

Repeater(foreach)用于對綁定數據源中的數據進行遍歷并按格式顯示,每條數據以什么格式顯示是由Repeater的<ItemTemplate>來決定的,模板會多次顯示,就像foreach, ItemTemplate 中相當于{}中的語句。<ItemTemplate>姓名:<%#Eval(“Name”)%><b>年齡:<%#Eval(“Age”)%></b><br /></ItemTemplate>。注意:%和#中間不能有空格。

<%#Eval("Name")%>表示在這個位置顯示當前實體對象的Name屬性,注意調用Eval、Bind這些數據綁定方法的時候要用#。

因為Eval就是將屬性顯示到指定的位置,因此也可以顯示到文本框中<ItemTemplate>姓名:
<asp:TextBox runat="server"Text='<%#Eval("Name") %>' />
</ItemTemplate>

注意不要寫成Text="<%#Eval('Name')%>" 因為<%%>中的是C#代碼,''是字符,而不是字符串

還可以用在服務器控件中<asp:TextBox Text='<%#Eval("Name") %>'runat="server"></asp:TextBox>

DemoCode及注意點
Repeater.aspx

復制代碼 代碼如下:


<% @ Page Language="C#" AutoEventWireup="true" CodeBehind="Repeater.aspx.cs" Inherits ="WebForm.Repeater" %>
<! 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 ></ title>
< style type ="text/css">
#tblist{ border-top :1px solid #000 ; border-left : 1px solid #000 ; margin: 0px auto ;width : 600px;}
#tblist td {border-bottom : 1px solid #000 ; border-right: 1px solid #000; padding :5px }
#didPanel {position : absolute; left :350px ; top: 200px ;width : 500px; height :70px ; border: 1px solid #000; background-color :Window ; padding: 15px ;display : none}
</style >
</ head>
< body>
<form runat="server">
<asp : ObjectDataSource ID ="ObjectDataSource1" runat ="server"
SelectMethod ="getAllClasses" TypeName ="BLL.Classes">
< SelectParameters>
< asp: Parameter DefaultValue ="false" Name ="isDel" Type ="Boolean" />
</ SelectParameters>
</asp : ObjectDataSource>
<div >
<table>
< asp: Repeater ID ="Repeater1" runat ="server" DataSourceID ="ObjectDataSource1">
< HeaderTemplate> <!--頭模板-->
< tr>
< td> ID </td >
< td> Name </td >
< td> Count </td >
< td> Img </td >
< td> 操作 </td >
</ tr>
</ HeaderTemplate>
< ItemTemplate> <!--項模板-->
< tr>
< td>< input type ="text" value =" <%# Eval("CID")%> " /></ td >
< td>
< asp: TextBox ID ="TextBox1" runat ="server" Text ='<% # Eval("CName")%> '></asp : TextBox></ td >
< td> <% #Eval( "CCount" )%> </td >
< td>
<%--<img src="images/<%#Eval("CImg")%>"/>--%>
<!--服務器端圖片路徑需要添加images/文件路徑時 需要放在#號后 如果images/《% 會導致《%被作為字符串解析-->
< asp: Image ID ="Image1" runat ="server" ImageUrl ='<% # "images/"+Eval("CImg")%> ' Width ="100px" Height ="80px"/>
<!--補充:模板中的按鈕一般不寫OnClick事件響應,而是響應Repeater的ItemCommand事件。-->
</ td>
</ tr>
</ ItemTemplate>
< SeparatorTemplate> <!--兩項數據間的間隔模板-->
< tr>
< td colspan ="5" style ="background-color :red; height:2px; line-height :3px;"></td >
</ tr>
</ SeparatorTemplate>
< AlternatingItemTemplate> <!--交替項模板-->
< tr style ="background-color :Gray">
< td>< input type ="text" value =" <%# Eval("CID")%> " /></ td >
< td>
< asp: TextBox ID ="TextBox1" runat ="server" Text ='<% # Eval("CName")%> '></asp : TextBox></ td >
< td> <% #Eval( "CCount" )%> </td >
< td> <% #Eval( "CImg" )%> </td >
< td>
< asp: Button ID ="btnDel" runat ="server" Text ="刪除" OnCommand ="Button_OnClick" CommandName ="Del" CommandArgument ='<% # Eval("CID")%> '/>
</ td>
</ tr>
</ AlternatingItemTemplate>
< FooterTemplate> <!--腳模板-->
< tr>
< td colspan ="5">不是所有痞子都叫一毛 </ td>
</ tr>
</ FooterTemplate>

</ asp: Repeater >
</table >
</div >
</form >
</ body>
</ html>


Repeater.aspx.cs

復制代碼 代碼如下:


using System;
using System.Web.UI.WebControls;
namespace WebForm {
public partial class Repeater : System.Web.UI. Page {
protected void Page_Load( object sender, EventArgs e) {
}
protected void Button_OnClick( object sender, CommandEventArgs e) {
//Response.Write("CommandArgument" + e.CommandArgument + "CommandName" + e.CommandName + "刪除了" + DateTime.Now);需前臺設置CommandArgument及CommandName屬性
if (new BLL. Classes().SoftDel( Convert .ToInt32(e.CommandArgument)) > 0) {
Response.Write( "刪除成功" );
Repeater1.DataBind(); //重新綁定數據 否則服務器不會重新生成Repeater數據 而是返回__VIEWSTATE中原有數據
} else {
Response.Write( "刪除失敗" );
}
}
}
}


效果圖:

Repeater與ListView功能概述及使用介紹

ListView

Repeater一般只用來展示數據,如果要增刪改查(CRUD)則用ListView更方便。使用向導來使ListView會自動生成很多模板,免去手寫模板代碼的麻煩,必要時進行手工調整即可。

 同Repeater一樣設定數據源,然后點擊智能提示中的“配置ListView”,選擇一種布局和樣式,然后根據需要勾選“啟用編輯”、“啟用刪除”、“啟用插入”、“啟用分頁”,就會自動生成常用的模板。

效果圖類似:

Repeater與ListView功能概述及使用介紹

ListView默認的分頁是先從數據源取得所有數據,然后再截取當前頁面的部分,在數據量非常大的情況下效率非常低,因此默認分頁基本不能用。應該是只從數據源取得要顯示的數據。詳見下章《如何實現ListView高效分頁》

同樣內容點可參見《如何實現ListView高效分頁》貼出的代碼

LayoutTemplate為布局模板,布局模板中必須有一個ID為itemPlaceholder的服務端控件,項占位符(FrameWork4.0以后不需要),itemPlaceholder前面就是相當于Repeater中的HeaderTemplate,itemPlaceholder后面就是相當于Repeater中的FooterTemplate,因此ListView中沒有這兩個模板。

ItemTemplate是每一項的模板,AlternatingItemTemplate是隔行顯示的模板,和Repeater一樣。

EmptyDataTemplate為數據源沒有數據的時候顯示的內容(Insert也算數據),這樣的話可以實現“沒有查找結果”、“對不起,找不到您要找的數據”等提示內容

InsertItemTemplate為插入數據界面的模板,

EditItemTemplate為編輯數據的模板,

SelectedItemTemplate為標記為Selected的行的模板。

數據源配置見上章 Asp.Net中的數據源

發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
亚洲香蕉成人av网站在线观看_欧美精品成人91久久久久久久_久久久久久久久久久亚洲_热久久视久久精品18亚洲精品_国产精自产拍久久久久久_亚洲色图国产精品_91精品国产网站_中文字幕欧美日韩精品_国产精品久久久久久亚洲调教_国产精品久久一区_性夜试看影院91社区_97在线观看视频国产_68精品久久久久久欧美_欧美精品在线观看_国产精品一区二区久久精品_欧美老女人bb
国产欧美精品一区二区三区介绍| 欧美性开放视频| 福利一区视频在线观看| 最近2019中文字幕一页二页| 久久久久国产视频| 久久久久免费精品国产| 国外成人在线视频| 丝袜一区二区三区| 国产成人av在线| 日韩欧美在线一区| 国产成人在线一区| 欧美日韩精品在线| 亚洲欧美日本精品| 欧美亚洲国产成人精品| 国产在线观看精品一区二区三区| 亚洲天堂av女优| 日韩中文字幕视频在线| 国产精品久久久91| 欧美一级在线播放| 91精品久久久久久久久不口人| 亚洲欧洲日韩国产| 美日韩精品免费观看视频| 91精品久久久久久久久| 国产精品精品视频一区二区三区| 欧美视频中文字幕在线| 国产一区二区三区直播精品电影| 亚洲综合色av| 久久久欧美一区二区| 久久久久久网站| xvideos亚洲| 久久久久五月天| www国产91| 成人h片在线播放免费网站| 日本不卡高字幕在线2019| 国产成人自拍视频在线观看| 26uuu久久噜噜噜噜| 日韩精品久久久久| 亚洲美女精品成人在线视频| 国产一区二区三区网站| 欧美猛交ⅹxxx乱大交视频| www.久久色.com| 欧美电影免费看| 欧美精品久久久久久久| 国产欧美日韩91| 日本道色综合久久影院| 中文字幕亚洲无线码在线一区| 欧美亚洲在线观看| 91亚洲国产成人久久精品网站| 久久久人成影片一区二区三区| 欧美巨乳美女视频| 日韩欧美国产成人| 亚洲精品视频中文字幕| 久久伊人91精品综合网站| 日韩欧美在线免费观看| 欧美日韩成人在线观看| 狠狠躁天天躁日日躁欧美| 午夜免费在线观看精品视频| 亚洲欧洲国产伦综合| 国产精品美女久久久久av超清| 91精品国产沙发| 久久久久久国产精品三级玉女聊斋| 欧美在线一区二区视频| 亚洲免费伊人电影在线观看av| 国模极品一区二区三区| 精品国产一区二区三区久久久| 成人写真视频福利网| 91精品视频一区| 欧美一区三区三区高中清蜜桃| 国产精品女主播| 成人黄色午夜影院| www国产精品com| 91九色国产社区在线观看| 亚洲一区999| 97色在线观看| 国产成人亚洲综合| 日韩av成人在线观看| 亚洲风情亚aⅴ在线发布| 欧美性jizz18性欧美| 亚洲天堂av在线播放| 亚洲欧洲中文天堂| 欧美成人激情视频| 日韩在线观看视频免费| 亚洲色图欧美制服丝袜另类第一页| 国产精品欧美一区二区| 国产精品成人av在线| 亚洲一区二区三区毛片| 中文字幕av一区二区三区谷原希美| 97久久精品人人澡人人爽缅北| 日韩中文字幕网址| 久久精品视频在线| 91老司机精品视频| 久久激情五月丁香伊人| 欧美亚洲在线观看| 日韩禁在线播放| 92看片淫黄大片看国产片| 国产精品亚洲片夜色在线| 日韩精品久久久久久久玫瑰园| 亚洲人成欧美中文字幕| 一区二区三区精品99久久| 福利二区91精品bt7086| 欧美有码在线视频| 国产一区二区三区在线观看网站| 成人av在线天堂| 国产一区二区香蕉| 日本最新高清不卡中文字幕| 综合久久五月天| 国产精品爱久久久久久久| 国产精欧美一区二区三区| 狠狠久久五月精品中文字幕| 国产精品日韩一区| 欧美国产日产韩国视频| 久久久精品久久久| 欧美日韩中文字幕在线视频| 日韩精品在线电影| 久久99亚洲热视| 欧美成人免费va影院高清| 91地址最新发布| 国产精品久久久久免费a∨大胸| 亚洲免费电影一区| 亚洲成人久久久久| 欧美一级视频一区二区| 久久久免费精品| 国产成人高清激情视频在线观看| 成人黄色av免费在线观看| 国产精品久久电影观看| 日韩专区在线观看| 国产精品美女视频网站| 91最新国产视频| 国产精品主播视频| 日韩电影免费在线观看中文字幕| 国产精品美女视频网站| 欧美视频在线观看免费网址| 国产成人中文字幕| 国产亚洲精品激情久久| 在线观看视频亚洲| 成人免费网站在线观看| 国产日本欧美一区二区三区| 国产精品久久久久久影视| 欧美黑人性生活视频| 精品偷拍一区二区三区在线看| 日韩在线视频一区| 精品国产乱码久久久久酒店| 97精品伊人久久久大香线蕉| 亚洲精品成人网| www.欧美精品一二三区| 国内精品400部情侣激情| 欧美另类69精品久久久久9999| 国产精品一二三视频| 日韩欧美高清视频| 亚洲电影中文字幕| 97久久精品国产| 亚洲国产精品资源| 2019中文字幕全在线观看| 91视频-88av| 日韩第一页在线| 日韩中文av在线| 国产亚洲精品美女久久久久| 中文字幕久热精品视频在线| 亚洲free性xxxx护士白浆| 久久久这里只有精品视频| 国产精品草莓在线免费观看| 性色av一区二区三区在线观看| 国产精品亚洲视频在线观看| 精品五月天久久|