使用ListView控件进行修改,删除与添加操作
1.页面代码:

<asp:ListView ID="lv2" runat="server"
onpagepropertieschanging="lv_PagePropertiesChanging2"
onitemcanceling="lv2_ItemCanceling" onitemediting="lv2_ItemEditing"
onitemupdating="lv2_ItemUpdating"
onitemdeleting="lv2_ItemDeleting" DataKeyNames="id">
<EditItemTemplate>
<div class="lvData">
<div class="id"><%#eval_r("id")%></div>
<div class="proId"><%#eval_r("provinceID")%></div>
<div class="proName">
<asp:TextBox ID="txt" runat="server" Text='<%#eval_r("province")%>'></asp:TextBox></div>
<div class="edit">
<asp:LinkButton ID="lbtnEdit" runat="server" CommandName="Update" >更新</asp:LinkButton>
<asp:LinkButton ID="LinkButton1" runat="server" CommandName="Cancel" >取消</asp:LinkButton>
</div>
</div>
</EditItemTemplate>
<ItemTemplate>
<div class="lvData">
<div class="id"><%#eval_r("id")%></div>
<div class="proId"><%#eval_r("provinceID")%></div>
<div class="proName"><%#eval_r("province")%></div>
<div class="edit">
<asp:LinkButton ID="lbtnEdit" runat="server" CommandName="Edit" >编辑</asp:LinkButton>
<asp:LinkButton ID="LinkButton2" runat="server" CommandName="Delete" >删除</asp:LinkButton>
</div>
</div>
</ItemTemplate>
<AlternatingItemTemplate>
<div class="lvData alterStyle">
<div class="id"><%#eval_r("id")%></div>
<div class="proId"><%#eval_r("provinceID")%></div>
<div class="proName"><%#eval_r("province")%></div>
<div class="edit">
<asp:LinkButton ID="lbtnEdit" runat="server" CommandName="Edit" >编辑</asp:LinkButton>
<asp:LinkButton ID="LinkButton3" runat="server" CommandName="Delete" >删除</asp:LinkButton>
</div>
</div>
</AlternatingItemTemplate>
</asp:ListView>
<asp:DataPager ID="DataPager2" PagedControlID="lv2" runat="server">
<Fields>
<asp:NextPreviousPagerField ShowFirstPageButton="True"
ShowLastPageButton="True" ShowNextPageButton="True"
ShowPreviousPageButton="True" />
</Fields>
</asp:DataPager>

2.后置代码:

public partial class index : System.Web.UI.Page
{
DBHelper db = new DBHelper();
protected void Page_Load(object sender, EventArgs e)
{
if (!IsPostBack )
{
Lv2Bind();//更新值
}
} protected void lv_PagePropertiesChanging2(object sender, PagePropertiesChangingEventArgs e)
{
this.DataPager2.SetPageProperties(e.StartRowIndex, e.MaximumRows, false);
Lv2Bind();
} protected void lv2_ItemEditing(object sender, ListViewEditEventArgs e)
{
lv2.EditIndex = e.NewEditIndex;
Lv2Bind();
} protected void lv2_ItemUpdating(object sender, ListViewUpdateEventArgs e)
{
int index = e.ItemIndex;
TextBox txtbox = lv2.Items[index].FindControl("txt") as TextBox;
string proName = txtbox.Text;
string id=lv2.DataKeys[index].Value.ToString();
string sql = string.Format("UPDATE [Public].[dbo].[Province] SET [province] =@province WHERE id=@id");
SqlParameter[] paras = {
new SqlParameter("@province",proName),
new SqlParameter("@id",id)
};
if (db.ExecuteNonQuery(sql, paras) > )
{
this.divAlert.Attributes.CssStyle.Add("display", "block");
Lv2Bind();
}
else
{
Page.ClientScript.RegisterStartupScript(this.GetType(), "alert", "<script>更新失败</script>");
Lv2Bind();
}
} protected void lv2_ItemCanceling(object sender, ListViewCancelEventArgs e)
{
lv2.EditIndex = -;
Lv2Bind();
} protected void lv2_ItemDeleting(object sender, ListViewDeleteEventArgs e)
{
} private void Lv2Bind()
{
this.lv2.DataSource = GetDT();
this.lv2.DataBind();
}
}

注意要点:
1.在Page_Load事件中,要把控件绑定数据的方法放在ispostback方法里面,以避免在页面加载的时候首
都要加载原来的数据,修改的数据无法更新的情况。
2.使用DataPager控件给ListView控件分页时,需要编写ListView控件的lv_PagePropertiesChanging()
时间,以使在进行翻页操作时控件的数据能及时更新到相应页面。

ASP.NET使用ListView数据绑定控件和DataPager实现数据分页显示(二)的更多相关文章

  1. ASP.NET使用ListView数据绑定控件和DataPager实现数据分页显示(一)

    为什么使用ListView+DataPager的方式实现分页显示? .net提供的诸多数据绑定控件,每一种都有它自己的优点和缺点.如果需要对数据进行操作,如果数据量不大的情况下,DataList和Gr ...

  2. asp.net学习之 数据绑定控件--表格绑定控件

    原文:asp.net学习之 数据绑定控件--表格绑定控件     数据绑定 Web 服务器控件是指可绑定到数据源控件,以实现在 Web 应用程序中轻松显示和修改数据的控件.数据绑定 Web 服务器控件 ...

  3. asp.net学习之 数据绑定控件--List数据绑定控件

    原文:asp.net学习之 数据绑定控件--List数据绑定控件 List控件(如 CheckBoxList.DropDownList.ListBox 和 RadioButtonList 类)继承自L ...

  4. asp.net学习之数据绑定控件、数据源控件概述

    原文:asp.net学习之数据绑定控件.数据源控件概述 1.asp.net数据绑定控件分为三大类,每个类分别进行详细:      ● 列表式数据绑定控件: 列表式数据绑定控件常用来在一个表格内的一个字 ...

  5. GridView数据绑定控件的模版列时设置显示的格式

    形式 语法 结果 数字 {0:N2} 12.36   数字 {0:N0} 13   货币 {0:c2} $12.36   货币 {0:c4} $12.3656   货币 "¥{0:N2}&q ...

  6. vc 在edit控件中动态插入数据滚动显示

    内存从网上论坛摘抄整理 思路:给控件设置多行属性,设置垂直滚动条,Auto Vscroll设置为true,放入文本后把插入点设置到末尾 pEdit->LineScroll(pEdit->G ...

  7. 《ASP.NET1200例》ListView 控件与DataPager控件的结合<二>

    ASP.NET使用ListView数据绑定控件和DataPager实现数据分页显示 为什么使用ListView+DataPager的方式实现分页显示? .net提供的诸多数据绑定控件,每一种都有它自己 ...

  8. 《ASP.NET1200例》ListView 控件与DataPager控件的结合<一>

    分页     在前一部分开始时介绍的原 HTML 设计中内含分页和排序,所以根据规范完整实现该网格的任务尚未完成.我们先分页,然后再排序. ListView 控件中的分页通过引入另一个新控件 Data ...

  9. 【转】ASP.NET常用数据绑定控件优劣总结

    转自:http://www.cnblogs.com/Olive116/archive/2012/10/24/2736570.html ASP.NET常用数据绑定控件优劣总结   本文的初衷在于对Asp ...

随机推荐

  1. zclip复制到剪切板插件有个bug

    今天发现zclip复制到剪切板插件有个bug,就是在遨游和360浏览器的兼容模式下,点击复制没响应,后来我看了页面代码,发现在这两个浏览器的兼容模式下,生成的是<object>,其他浏览器 ...

  2. linux设置iptables防火墙的详细步骤(centos防火墙设置方法)

    CentOS系统也是基于linux中的它的防火墙其实就是iptables了,下面我来介绍在CentOS防火墙iptables的配置教程,希望此教程对各位朋友会有所帮助.   iptables是与Lin ...

  3. python的return self的用法

    转载:https://blog.csdn.net/jclian91/article/details/81238782 class foo: def __init__(self): self.m = 0 ...

  4. pig入门案例

    测试数据位于:/home/hadoop/luogankun/workspace/sync_data/pigperson.txt中的数据以逗号分隔 ,zhangsan, ,lisi, ,wangwu, ...

  5. 信息学奥赛(NOIP)复赛学习方法推荐

    一.确定你的语言 NOIP包括三种语言c/c++/pascal,在最初必须确定自己使用的语言.没有c/c++基础的,个人建议使用pascal,因为它更容易上手,如果有充裕的时间,则建议c/c++,因为 ...

  6. mysql更新(四) 数据类型

    07-数据类型   介绍 存储引擎决定了表的类型,而表内存放的数据也要有不同的类型,每种数据类型都有自己的宽度,但宽度是可选的 详细参考链接:http://www.runoob.com/mysql/m ...

  7. CYQ.Data 批量添加数据性能测试(每秒千、万)---003

    原文地址:https://www.cnblogs.com/cyq1162/p/3216267.html 今天有网友火晋地同学进了CYQ.Data官方群了,他正在折腾了一个各大ORM性能测试的比较的软件 ...

  8. sklearn的estimator

    estimator的工作流程 在sklearn中,估计器(estimator)是一个重要的角色,分类器和回归器都属于estimator.在估计器中有有两个重要的方法是fit和transform. fi ...

  9. Apache Maven 入门篇

    2017-11-09注释:IntelliJ IDEA 2017.2.5 x64 等新版本会安装maven,为了有好的体验 建议在安装目录找到IntelliJ IDEA 2017.2.5\plugins ...

  10. leetcode404

    /** * Definition for a binary tree node. * public class TreeNode { * public int val; * public TreeNo ...