Asp.Net:Repeater 详情 备用
页面
repeator就想for循环一样,没有编辑模板,有删除delete和详情detail模板
<%@ Page Language="C#" AutoEventWireup="true" CodeFile="PersonSpecialList.aspx.cs"
Inherits="UI_ColliSearch_PersonSpecialList" %>
<%@ Register Assembly="WebPageContorl" Namespace="WebPageContorl" TagPrefix="cc1" %> //引入分页组件
<!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>
</head>
<body>
<form id="form1" runat="server">
<div>
<asp:TextBox ID="TxtName" runat="server"></asp:TextBox>
<asp:ImageButton ID="ibtnAdd" runat="server" ImageUrl="~/image/button_35.jpg" OnClick="ibtn_Click"
Style="height: 21px" />
</div>
<asp:Repeater ID="Repeater1" runat="server" DataSourceID="ObjectDataSource1" OnItemCommand="Repeater1_ItemCommand">
<HeaderTemplate>
<table>
<tr>
<td>
序号
</td>
<td>
名字
</td>
<td>
性别
</td>
<td>
身份证号
</td>
<td>
操作
</td>
</tr>
</HeaderTemplate>
<ItemTemplate>
<tr>
<td>
<%#Container.ItemIndex+1 %>
</td>
<td>
<%#DataBinder.Eval(Container.DataItem, "Name")%>
</td>
<td>
<%#SelfConvert(Eval("Sex", "{0}"))%>
</td>
<td>
<asp:Label ID="PerIdNumber" runat="server" Text='<%#Eval("PerIdNumber")%>'></asp:Label>
</td>
<td>
<asp:ImageButton ID="ibtnSearch" runat="server" ImageUrl="~/image/page_ck.png" CommandName="Search"
CommandArgument='<%# Eval("PopulationID") %>' />
</td>
</tr>
</ItemTemplate>
<FooterTemplate>
</table></FooterTemplate>
</asp:Repeater>
<asp:ObjectDataSource ID="ObjectDataSource1" runat="server" SelectMethod="GetPageList"
TypeName="BLL.Info_RegisteredPopulationBLL">
<SelectParameters>
<asp:Parameter DefaultValue="1" Name="pageIndex" Type="Int32" />
<asp:Parameter DefaultValue="12" Name="pageSize" Type="Int32" />
<asp:Parameter DefaultValue="" Name="name" Type="String" />
<asp:Parameter Direction="Output" Name="pageCount" Type="Int32" />
</SelectParameters>
</asp:ObjectDataSource>
<div id="mypage" runat="server">
<cc1:WebPager ID="WebPager2" runat="server" AlwaysShow="True" BorderStyle="None"
CssClass="paginator" CurrentPageButtonClass="cpb" CustomInfoHTML="当前第%CurrentPageIndex%页,共%PageCount%页/每页%PageSize%条,总记录数:%RecordCount%"
CustomInfoTextAlign="Right" FirstPageText="首页" HorizontalAlign="Left" LastPageText="尾页"
NextPageText="下一页" PrevPageText="上一页" ShowPageIndexBox="Never" Wrap="False" ShowCustomInfoSection="Left"
OnPageChanged="WebPager2_PageChanged" PageSize="12">
</cc1:WebPager>
</div>
<div style="display: none;">
<asp:Label ID="lPageIndex" runat="server" Text="0"></asp:Label>
<asp:Label ID="lPageSize" runat="server" Text="0"></asp:Label>
</div>
</form>
</body>
</html>
项目模板绑定
<td>
<%#Container.ItemIndex+1 %> //序号,分页后也是从1开始
</td>
<td>
<%#DataBinder.Eval(Container.DataItem, "Name")%>//绑定全写
</td>
<td>
<%#SelfConvert(Eval("Sex", "{0}"))%> //绑定后台对应方法
</td>
<td>
<asp:Label ID="PerIdNumber" runat="server" Text='<%#Eval("PerIdNumber")%>'></asp:Label>//绑定Eval缩写 单引号 服务器空间
</td>
<td>
<asp:ImageButton ID="ibtnSearch" runat="server" ImageUrl="~/image/page_ck.png" CommandName="Search"
CommandArgument='<%# Eval("PopulationID") %>' />
</td>
后台代码
public partial class UI_ColliSearch_PersonSpecialList : System.Web.UI.Page
{
protected void Page_Load(object sender, EventArgs e)
{
if (!IsPostBack)
{
WebPager2.RecordCount = 0;
}
}
//数据总条数赋给分页组件
protected void ibtn_Click(object sender, ImageClickEventArgs e)
{
WebPager2.RecordCount = Info_RegisteredPopulationBLL.GetSpecialCount(TxtName.Text);
bind();
}
protected void WebPager2_PageChanged(object sender, EventArgs e)
{
bind();
}
//切换页码时,重新绑定数据
public void bind()
{
lPageIndex.Text = (WebPager2.CurrentPageIndex).ToString();
int pageIndex = Convert.ToInt32(lPageIndex.Text);
lPageSize.Text = (WebPager2.PageSize).ToString();
int pageSize = Convert.ToInt32(lPageSize.Text);
//对数据源进行操作
//复制SelectParameters
Parameter pageIndexPara = ObjectDataSource1.SelectParameters["pageIndex"];
Parameter pageSizePara = ObjectDataSource1.SelectParameters["pageSize"];
Parameter namePara = ObjectDataSource1.SelectParameters["name"];
Parameter pageCountPara = ObjectDataSource1.SelectParameters["pageCount"];
//清除原有的SelectParameter
ObjectDataSource1.SelectParameters.Clear();
//重新给数据源赋值参数
pageIndexPara.DefaultValue = lPageIndex.Text;
pageSizePara.DefaultValue = lPageSize.Text;
namePara.DefaultValue = TxtName.Text;
//重新加入新的SelectParameter
ObjectDataSource1.SelectParameters.Add(pageIndexPara);
ObjectDataSource1.SelectParameters.Add(pageSizePara);
ObjectDataSource1.SelectParameters.Add(namePara);
ObjectDataSource1.SelectParameters.Add(pageCountPara);
Repeater1.DataBind();
}
//转换格式 绑定数据处理函数
public string SelfConvert(string sex)
{
if (sex == "1")
{
return "男";
}
else if (sex == "2")
{
return "女";
}
else if (sex == "0")
{
return "未知的性别";
}
else if (sex == "9")
{
return "未说明的性别";
}
else
{
return "";
}
}
//repeator里面任意服务器控件操作都触发ItemCommand。用e.COMMANDnAM和e.argu区分是详情,删除
protected void Repeater1_ItemCommand(object source, RepeaterCommandEventArgs e)
{
Label PerIdNumber = e.Item.FindControl("PerIdNumber") as Label;
Response.Redirect("PersonSpecial.aspx?identityCode=" + PerIdNumber.Text);
}
}
Asp.Net:Repeater 详情 备用的更多相关文章
- [ASP.NET]asp.net Repeater控件的使用方法
asp.net Repeater控件的使用方法 -- : 4770人阅读 评论() 收藏 举报 asp.netserveraspdatasetdeletexhtml 今天学习了,Repeater控件 ...
- ASP.NET repeater添加序号列的方法
ASP.NET repeater添加序号列的方法 1.<itemtemplate> <tr><td> <%# Container.ItemIndex + 1% ...
- ASP.NET Repeater嵌套Repeater实现菜单加载
在KS系统中要实现从数据库中读取界面权限文件实现菜单.界面的动态加载. 效果图: ASP.NET界面代码 <div id="menu-container"> <a ...
- ASP.NET Repeater 控件分页
protected void Page_Load(object sender, EventArgs e) { HttpContext context = HttpContext.Current; co ...
- ASP.NET Repeater 绑定 DropDownList Calendar 选择日期
using System; using System.Collections.Generic; using System.Linq; using System.Web; using System.We ...
- ASP.NET- 查找Repeater控件中嵌套的控件
如何在Repeater的HeaderTemplate和FooterTemplate模板中寻找控件?在Repeater的ItemTemplate模板中的控件,我们可以用Items属性来遍历行并用Find ...
- Asp.net Repeater控件
Repeater控件和DataList控件,可以用来一次显示一组数据项.比如,可以用它们显示一个数据表中的所有行. Repeater控件完全由模板驱动,提供了最大的灵活性,可以任意设置它的输出 ...
- asp.net repeater控件操作
Repeater控件和DataList控件,可以用来一次显示一组数据项.比如,可以用它们显示一个数据表中的所有行. Repeater控件完全由模板驱动,提供了最大的灵活性,可以任意设置它的输出格式. ...
- ASP.NET -- repeater控件的使用
转载自网络-原网址[http://blog.csdn.net/haitaodoit/article/details/7021214] repeater绑定数据: protected void Page ...
随机推荐
- Fence Repair(poj 3253)
题意: 有一个农夫要把一个木板钜成几块给定长度的小木板,每次锯都要收取一定费用,这个费用就是当前锯的这个木版的长度 给定各个要求的小木板的长度,及小木板的个数n,求最小费用 提示: 以 3 5 8 5 ...
- js prototype
1 原型法设计模式 在.Net中可以使用clone()来实现原型法 原型法的主要思想是,现在有1个类A,我想要创建一个类B,这个类是以A为原型的,并且能进行扩展.我们称B的原型为A. 2 javasc ...
- PHP 5.4中的traits特性
Trait 是 PHP5. 中的新特性,是 PHP 多重继承的一种解决方案.例如,需要同时继承两个 Abstract Class, 这将会是件很麻烦的事情,Trait 就是为了解决这个问题. 简单使用 ...
- hdu 1059 多重背包
题意:价值分别为1,2,3,4,5,6的物品个数分别为a[1],a[2],a[3],a[4],a[5],a[6],问能不能分成两堆价值相等的. 解法:转化成多重背包 #include<stdio ...
- ActiveMQ Exception: java.io.EOFException: Chunk stream does not exist
解决办法: 方法1. 去掉延迟功能:<broker xmlns="http://activemq.apache.org/schema/core " brokerName=&q ...
- android模拟器使用PC串口调试
android模拟器使用PC串口调试1.模拟器可以使用PC的串口 启动模拟器并加载PC串口 命令如下: 运行 emulator @模拟器名称 -qemu -serial COM12.查看串口是否被 ...
- Hark的数据结构与算法练习之梳排序
算法说明梳排序是交换排序的一种,它其实也是改自冒泡排序,不同之处是冒泡排序的比较步长恒定为1,而梳排序的比较步长是变化的. 步长需要循环以数组长度除以1.3,到最后大于等于1即可. 光说可能比较抽象, ...
- Class文件结构
各种不同平台的虚拟机与所有平台都统一使用的程序存储格式--字节码(ByteCode)是构成平台无关性的基石,除了平台无关性,虚拟机的另外一种中立特性--语言无关性正越来越被开发者所重视.在Java发展 ...
- mvc-1mvc和类(2)
添加私有函数 var Person = function() {}; (function() { var findById = function(){}; Person.find = function ...
- mac OS X操作--快捷键