• 企业400电话
  • 微网小程序
  • AI电话机器人
  • 电商代运营
  • 全 部 栏 目

    企业400电话 网络优化推广 AI电话机器人 呼叫中心 网站建设 商标✡知产 微网小程序 电商运营 彩铃•短信 增值拓展业务
    Repeater控件实现编辑、更新、删除等操作示例代码
    如何在Repeater控件中实现像GridView控件一样的编辑、更新、删除功能?
    复制代码 代码如下:

    protected void Page_Load(object sender, EventArgs e)
    {
    if (!Page.IsPostBack)
    {
    BindGrid();
    }
    }
    private void BindGrid()
    {
    string strSQL = "SELECT * FROM [User]";
    OleDbConnection objConnection = new OleDbConnection(GetStrConnection());
    objConnection.Open();
    OleDbCommand objCommand = new OleDbCommand(strSQL, objConnection);
    OleDbDataReader reader = objCommand.ExecuteReader(CommandBehavior.CloseConnection);
    rptUser.DataSource = reader;
    rptUser.DataBind();
    }
    protected void rptUser_ItemDataBound(object sender, RepeaterItemEventArgs e)
    {
    if (e.Item.ItemType == ListItemType.Item || e.Item.ItemType == ListItemType.AlternatingItem)
    {
    System.Data.Common.DbDataRecord record = (System.Data.Common.DbDataRecord)e.Item.DataItem;
    int userId = int.Parse(record["UserId"].ToString());
    if (userId != id)
    {
    ((Panel)e.Item.FindControl("plItem")).Visible = true;
    ((Panel)e.Item.FindControl("plEdit")).Visible = false;
    }
    else
    {
    ((Panel)e.Item.FindControl("plItem")).Visible = false;
    ((Panel)e.Item.FindControl("plEdit")).Visible = true;
    }
    }
    }
    protected void rptUser_ItemCommand(object source, RepeaterCommandEventArgs e)
    {
    if (e.CommandName == "Edit")
    {
    id = int.Parse(e.CommandArgument.ToString());
    }
    else if (e.CommandName == "Cancel")
    {
    id = -1;
    }
    else if (e.CommandName == "Update")
    {
    string name = ((TextBox)this.rptUser.Items[e.Item.ItemIndex].FindControl("txtName")).Text.Trim();
    string email = ((TextBox)this.rptUser.Items[e.Item.ItemIndex].FindControl("txtEmail")).Text.Trim();
    string qq = ((TextBox)this.rptUser.Items[e.Item.ItemIndex].FindControl("txtQQ")).Text.Trim();
    string strSQL = "UPDATE [User] SET Name=@Name,Email=@Email,QQ=@QQ WHERE UserId=@UserId";
    OleDbConnection objConnection = new OleDbConnection(GetStrConnection());
    OleDbCommand objCommand = new OleDbCommand(strSQL, objConnection);
    objCommand.Parameters.Add("@Name", OleDbType.VarWChar);
    objCommand.Parameters["@Name"].Value = name;
    objCommand.Parameters.Add("@Email", OleDbType.VarWChar);
    objCommand.Parameters["@Email"].Value = email;
    objCommand.Parameters.Add("@QQ", OleDbType.VarWChar);
    objCommand.Parameters["@QQ"].Value = qq;
    objCommand.Parameters.Add("@UserId", OleDbType.Integer);
    objCommand.Parameters["@UserId"].Value = int.Parse(e.CommandArgument.ToString());
    objConnection.Open();
    objCommand.ExecuteNonQuery();
    objConnection.Close();
    }
    else if (e.CommandName == "Delete")
    {
    string strSQL = "DELETE * FROM [User] WHERE UserId=@UserId";
    OleDbConnection objConnection = new OleDbConnection(GetStrConnection());
    OleDbCommand objCommand = new OleDbCommand(strSQL, objConnection);
    objCommand.Parameters.Add("@UserId", OleDbType.Integer);
    objCommand.Parameters["@UserId"].Value = int.Parse(e.CommandArgument.ToString());
    objConnection.Open();
    objCommand.ExecuteNonQuery();
    objConnection.Close();
    }
    BindGrid();
    }
    private string GetStrConnection()
    {
    return "Provider=Microsoft.Jet.OleDb.4.0;data source=" + Server.MapPath("~/Database/test.mdb");
    }

    /CODE>form id="form1" runat="server">
    /CODE>asp:Repeater ID="rptUser" runat="server" onitemcommand="rptUser_ItemCommand"
    onitemdatabound="rptUser_ItemDataBound">
    /CODE>HeaderTemplate>
    /CODE>table width="960" align="center" cellpadding="3" cellspacing="1" style="background-color: #ccc;">
    /CODE>thead style="background-color: #eee;">
    /CODE>tr>
    /CODE>th width="10%">
    用户ID
    //CODE>th>
    /CODE>th>
    用户名
    //CODE>th>
    /CODE>th width="22%">
    邮件
    //CODE>th>
    /CODE>th width="20%">
    QQ
    //CODE>th>
    /CODE>th width="15%">
    注册时间
    //CODE>th>
    /CODE>th width="12%">
    操作
    //CODE>th>
    //CODE>tr>
    //CODE>thead>
    /CODE>tbody style="background-color: #fff;">
    //CODE>HeaderTemplate>
    /CODE>ItemTemplate>
    /CODE>asp:Panel ID="plItem" runat="server">
    /CODE>tr style="text-align: center;">
    /CODE>td>
    您可能感兴趣的文章:
    • asp.net使用Repeater控件中的全选进行批量操作实例
    • ASP.NET中repeater控件用法实例
    • 在Repeater控件中通过Eval的方式绑定Style样式代码
    • Repeater控件与PagedDataSource结合实现分页功能
    • 给Repeater控件里添加序号的5种才常见方法介绍
    • Repeater控件绑定的三种方式
    • Repeater控件动态变更列(Header,Item和Foot)信息实现思路
    • 如何取得Repeater控件选择的项目及注意事项
    • Repeater控件分别绑定数组和ArrayList实现思路
    • Repeater控件数据导出Excel(附演示动画)
    • 浅析Repeater控件的使用 (原样导出和动态显示/隐藏Repeater中的列)
    上一篇:Repeater怎么实现多行间隔显示分隔符
    下一篇:Repeater控件与PagedDataSource结合实现分页功能
  • 相关文章
  • 

    © 2016-2020 巨人网络通讯 版权所有

    《增值电信业务经营许可证》 苏ICP备15040257号-8

    Repeater控件实现编辑、更新、删除等操作示例代码 Repeater,控件,实现,编辑,