例如Repeater重复项 我们要在一个表里作删除以及修改 我们可以在Repeater中添加button控件
前台代码:
button有属性commandName 以及commandArgument
我们可以在coomandArgument中添加内容这样在Repeater中绑定的值就可以获取了,从而对这个值进行操作

<asp:Repeater ID="Repeater1" runat="server" OnItemCommand="Repeater1_ItemCommand">
<ItemTemplate>
<tr>
<td><input type="checkbox" name="checkbox2" id="checkbox2" /></td>
<td class="name"><%#Eval("Title") %></td>
<td><%# Eval("author") %></td>
<td><%# Eval("Categories.Name") %></td>
<td>
<asp:Button ID="Button1" runat="server" Text="修改" CommandName ="xiuGai" CommandArgument ='<%#Eval("id") %>'/>
<asp:Button ID="Button2" runat="server" Text="删除" CommandName="shanChu" CommandArgument ='<%#Eval("id") %>' OnClientClick="javascript:return confirm('确认要删除吗?');"/>
</td>
</tr>
</ItemTemplate>
</asp:Repeater>
后台代码:
我们可以从RepeatercommandeventArgs中获取commandName 通过swtich从而应对了多个button的障碍 事件是Repeater的onitemCommand

protected void Repeater1_ItemCommand(object source, RepeaterCommandEventArgs e)
{
switch (e.CommandName)
{
case "xiuGai":
// Response.Redirect("bookEdit.aspx?id=" + e.CommandArgument);
break;
case "shanChu":
Books books = new Books() { Id =Convert.ToInt32(e.CommandArgument) };
try
{
BooksManager.Del(books);
Response.Write("<script>alert('删除了id为:" + e.CommandArgument + "');</script>");
Repeater1.DataSource = BooksManager.GetPageBooks(out pagecount, 10, Convert.ToInt32(ViewState["pageindex"]));//重新绑定
Repeater1.DataBind();
}
catch(Exception ex)
{
Response.Write("<script>alert('删除不成功');</script>");
}
break;
}
}

viewState
起源:因为网页是无状态的,例如我们的分页 我们每次去查询数据库(分页),我们不知道当前的PageIndex是多少,如果用变量 + - ,我们每次提交服务器,页面的值都会被刷新.所有我们要使用viewState;
用法 :viewState["value"] = 1; 赋值
int value = viewState["value"];取值
viewState是生命周期是本网页启动 本网页关闭
--------------------------------------------------------------------------------
HyperLink
起源:该控件是超级链接控件 和 html中<a>类似
每次点击的时候都会提交一次服务器
设置NavigateUrl

前台: <asp:HyperLink ID="HyperLink1" runat="server">第一页</asp:HyperLink>
<asp:HyperLink ID="HyperLink2" runat="server">上一页</asp:HyperLink>
<asp:HyperLink ID="HyperLink3" runat="server">下一页</asp:HyperLink>
<asp:HyperLink ID="HyperLink4" runat="server">最后一页</asp:HyperLink>
后台:
HyperLink1.NavigateUrl = "DemoWebForm.aspx?pageIndex=1";
HyperLink2.NavigateUrl = "DemoWebForm.aspx?pageIndex=" + (pageIndex - 1);
HyperLink3.NavigateUrl = "DemoWebForm.aspx?pageIndex=" + (pageIndex + 1);
HyperLink4.NavigateUrl = "DemoWebForm.aspx?pageIndex=" + pageCount;
//通过 request.querystring["pageindex"] 获取分页的index 在访问数据库绑定给repeater

ASP.NET Repeater与Button 以及viewState 和 hyperLink的更多相关文章

  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 绑定 DropDownList Calendar 选择日期

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

  4. ASP.NET Repeater 控件分页

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

  5. Asp.net 服务器Application,Session,Cookie,ViewState和Cache区别

    2.8 Context 的使用Context 对象包含与当前页面相关的信息,提供对整个上下文的访问,包括请求.响应.以及上文中的Session 和Application 等信息.可以使用此对象在网页之 ...

  6. Asp.net Repeater控件

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

  7. asp.net repeater控件操作

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

  8. asp.net Repeater使用例子,包括分页

    <style type="text/css">    .tab{border-collapse:collapse; margin:0 auto;}    .tab th ...

  9. 给Repeater增加button事件,并绑定值

    ASPX页面: 增加两个事件,及传值. 1<asp:Repeater ID="rptList" OnItemDataBound="rptList_ItemDataB ...

随机推荐

  1. django基础之day09,Forms组件在程序中做了哪些事? 校验数据、渲染标签、展示信息

    ******************************* Forms组件 *************************************************** Forms组件在 ...

  2. Python实现的手机信息骚扰技术,切勿用作违法!

    今天我来讲讲我最近找到的一个小思路,利用python进行短信轰炸 首先 这是一个网站,他的业务存在短信发送 这个时候,我们打开神器burp或者其他抓包工具(最好用burp,因为repeater模块可以 ...

  3. Mapbox轨迹回放

        轨迹回放是webgis中的常见功能,是一种被客户喜闻乐见的GIS动画.     动画是一种短时间内不停重绘达到不断运动的效果.本文中轨迹回放就是事先计算好所需要的点,后面再进行播放.      ...

  4. C# Newtonsoft.Json JsonSerializerSettings配置

    JsonSerializerSettings常用配置整理 1.忽略某些属性 MemberSerialization.OptIn 默认情况下,所有的成员不会被序列化,类中的成员只有标有特性JsonPro ...

  5. 阿里蒋晓伟谈计算引擎Flink和Spark的对比

    本文整理自云栖社区之前对阿里搜索事业部资深搜索专家蒋晓伟老师的一次采访,蒋晓伟老师,认真而严谨.在加入阿里之前,他曾就职于西雅图的脸书,负责过调度系统,Timeline Infra和Messenger ...

  6. 一起学SpringMVC之RequestMapping详解

    本文以一个简单的小例子,简述SpringMVC开发中RequestMapping的相关应用,仅供学习分享使用,如有不足之处,还请指正. 什么是RequestMapping? RequestMappin ...

  7. C# base

    using System; using System.Collections.Generic; using System.Text; namespace 继承 { class Program { st ...

  8. 3.java基础之关键字instanceof

    1. instanceof 使用:对象引用名 instanceof 类名 作用:来判读引用的对象和类名是否兼容(是否继承该类,或爷爷辈的类) 例子: Team team = new Team(); t ...

  9. 【转载】C#中decimal保留2位有效小数

    在C#的数字运算过程中,有时候针对十进制decimal类型的计算需要保留2位有效小数,针对decimal变量保留2位有效小数有多种方法,可以使用Math.Round方法以及ToString先转换为字符 ...

  10. 龙芯电脑上Electron应用开发

    背景 最近在一台龙芯电脑(系统是中兴新支点,Linux)上开发electron应用. PS:龙芯是国产的cpu,采用是mips架构,类似x86.arm. 安装NodeJS 安装步骤请查看:https: ...