页面


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 详情 备用的更多相关文章

  1. [ASP.NET]asp.net Repeater控件的使用方法

    asp.net Repeater控件的使用方法 -- : 4770人阅读 评论() 收藏 举报 asp.netserveraspdatasetdeletexhtml 今天学习了,Repeater控件 ...

  2. ASP.NET repeater添加序号列的方法

    ASP.NET repeater添加序号列的方法 1.<itemtemplate> <tr><td> <%# Container.ItemIndex + 1% ...

  3. ASP.NET Repeater嵌套Repeater实现菜单加载

    在KS系统中要实现从数据库中读取界面权限文件实现菜单.界面的动态加载. 效果图: ASP.NET界面代码 <div id="menu-container"> <a ...

  4. ASP.NET Repeater 控件分页

    protected void Page_Load(object sender, EventArgs e) { HttpContext context = HttpContext.Current; co ...

  5. ASP.NET Repeater 绑定 DropDownList Calendar 选择日期

    using System; using System.Collections.Generic; using System.Linq; using System.Web; using System.We ...

  6. ASP.NET- 查找Repeater控件中嵌套的控件

    如何在Repeater的HeaderTemplate和FooterTemplate模板中寻找控件?在Repeater的ItemTemplate模板中的控件,我们可以用Items属性来遍历行并用Find ...

  7. Asp.net Repeater控件

    Repeater控件和DataList控件,可以用来一次显示一组数据项.比如,可以用它们显示一个数据表中的所有行.     Repeater控件完全由模板驱动,提供了最大的灵活性,可以任意设置它的输出 ...

  8. asp.net repeater控件操作

    Repeater控件和DataList控件,可以用来一次显示一组数据项.比如,可以用它们显示一个数据表中的所有行. Repeater控件完全由模板驱动,提供了最大的灵活性,可以任意设置它的输出格式. ...

  9. ASP.NET -- repeater控件的使用

    转载自网络-原网址[http://blog.csdn.net/haitaodoit/article/details/7021214] repeater绑定数据: protected void Page ...

随机推荐

  1. 将Excel文件.xls导入SQL Server 2005

    SQL2005 Microsoft SQL Server Management Studio Express管理器里,右键单击一个数据库,指向“任务”,再单击“导入数据”或“导出数据”中没有这个选项, ...

  2. docke跨主机通信之gre隧道

    GRE简介 GRE可以对网络层的任何协议来进行封装,类似LVS的IPIP协议,在原有的数据报上增加GRE协议数据报.然后在网络上传输,到达对端后,解开GRE数据报头,得到真实的数据报.其中的mac地址 ...

  3. Linux多台服务器之间的文件共享

    由于项目有个图片上传和导入导出的模块,所以当项目通过集群方式部署的时候就要考虑文件共享问题. 文件共享要么就是通过统一的文件系统来管理,要么就是在系统之间做文件共享,前者扩展性比较好,可以随时随地加服 ...

  4. Android UI组件

    <?xml version="1.0" encoding="utf-8"?> <LinearLayout xmlns:android=&quo ...

  5. html 表单 dom 注意跟表单的name值一致

    html 表单 dom 注意跟表单的name值一致 <script type="text/javascript"> function checkForm() { var ...

  6. wp8 ListPicker

    如何给selectedindex 绑定SelectedIndex="{Binding User.StationWorkFlag}"  这样写不对嘛 为何提示我 SelectedIn ...

  7. Android开发代码规范(转)

    Android开发代码规范 1.命名基本原则    在面向对象编程中,对于类,对象,方法,变量等方面的命名是非常有技巧的.比如,大小写的区分,使用不同字母开头等等.但究其本,追其源,在为一个资源其名称 ...

  8. 常用的Linux操作

    1.运行.sh文件 第一种方法: 首先你要打开一个终端. 然后输入sudo su 随后输入密码.这样就取得了root用户权限. 然后找到那个文件 执行./sh文件名字 这样.sh就运行了. 第二种方法 ...

  9. XML引入多scheme文件约束简单示例

    XML引入多scheme文件约束简单示例,用company.xsd和department.xsd来约束company.xml: company.xsd <?xml version="1 ...

  10. centOS下安装node4.x

    在以前 Node 0.x 的时候,只需要通过 yum install -y nodejs 就可以把 Node 安装好了.但是 yum 安装的 Node 只能安装到 0.10.40 版的,并不能安装到 ...