在温习一下gridview绑定,包括最简单的增删改

Html代码如下:

Code
<div>
    <asp:GridView ID="gvArea" runat="server" AutoGenerateColumns="False" OnRowCancelingEdit="gvArea_RowCancelingEdit"
        OnRowDeleting="gvArea_RowDeleting" OnRowEditing="gvArea_RowEditing" OnRowUpdating="gvArea_RowUpdating"
        CellPadding="4" ForeColor="#333333" GridLines="None">
        <RowStyle BackColor="#EFF3FB" />
        <Columns>
            <asp:TemplateField HeaderText="编号">
                <ItemTemplate>
                    <asp:Label ID="lblID" runat="server" Text='<%# Bind("ID") %>'></asp:Label>
                </ItemTemplate>
            </asp:TemplateField>
            <asp:TemplateField HeaderText="功能区">
                <EditItemTemplate>
                    <asp:TextBox ID="txtAreaName" runat="server" Text='<%# Bind("AreaName") %>'></asp:TextBox>
                </EditItemTemplate>
                <ItemTemplate>
                    <asp:Label ID="lblName" runat="server" Text='<%# Bind("AreaName") %>'></asp:Label>
                </ItemTemplate>
                <FooterTemplate>
                    <asp:TextBox ID="txtName" runat="server"></asp:TextBox>
                </FooterTemplate>
            </asp:TemplateField>
            <asp:TemplateField HeaderText="描述">
                <EditItemTemplate>
                    <asp:TextBox ID="txtAreaDescription" runat="server" Text='<%# Bind("AreaDescription") %>'></asp:TextBox>
                </EditItemTemplate>
                <ItemTemplate>
                    <asp:Label ID="lblDescription" runat="server" Text='<%# Bind("AreaDescription") %>'></asp:Label>
                </ItemTemplate>
                <FooterTemplate>
                    <asp:TextBox ID="txtDescription" runat="server"></asp:TextBox>
                </FooterTemplate>
            </asp:TemplateField>
            <asp:TemplateField HeaderText="编辑" ShowHeader="False">
                <EditItemTemplate>
                    <asp:LinkButton ID="LinkButton1" runat="server" CausesValidation="True" CommandName="Update"
                        Text="更新"></asp:LinkButton>
                    <asp:LinkButton ID="LinkButton2" runat="server" CausesValidation="False" CommandName="Cancel"
                        Text="取消"></asp:LinkButton>
                </EditItemTemplate>
                <ItemTemplate>
                    <asp:LinkButton ID="LinkButton1" runat="server" CausesValidation="False" CommandName="Edit"
                        Text="编辑"></asp:LinkButton>
                </ItemTemplate>
                <FooterTemplate>
                    <asp:Button ID="btnAdd" runat="server" Text="添 加" OnClick="btnAdd_Click" />
                    <asp:Button ID="btnCancel" runat="server" Text="取 消" OnClick="btnCancel_Click" />
                </FooterTemplate>
            </asp:TemplateField>
            <asp:TemplateField HeaderText="删除" ShowHeader="False">
                <ItemTemplate>
                    <asp:LinkButton ID="LinkButton2" runat="server" CausesValidation="False" CommandName="Delete"
                        Text="删除"></asp:LinkButton>
                </ItemTemplate>
            </asp:TemplateField>
        </Columns>
        <FooterStyle BackColor="#507CD1" Font-Bold="True" ForeColor="White" />
        <PagerStyle BackColor="#2461BF" ForeColor="White" HorizontalAlign="Center" />
        <SelectedRowStyle BackColor="#D1DDF1" Font-Bold="True" ForeColor="#333333" />
        <HeaderStyle BackColor="#507CD1" Font-Bold="True" ForeColor="White" />
        <EditRowStyle BackColor="#2461BF" />
        <AlternatingRowStyle BackColor="White" />
    </asp:GridView>
    <br />
    <asp:Button ID="showAdd" runat="server" Text="添 加 记 录" Width="367px" OnClick="showAdd_Click" />
</div>

后台代码:

数据绑定

private void GridViewDataBind()
{
      AreaDAO dao = new AreaDAO();
      gvArea.DataSource = dao.GetAllArea();
      gvArea.DataKeyNames = new string[] { "ID" };
      gvArea.DataBind();
}

点击编辑按纽

protected void gvArea_RowEditing(object sender, GridViewEditEventArgs e)
{
      gvArea.EditIndex = e.NewEditIndex;
      GridViewDataBind();
}

更新

Code
protected void gvArea_RowUpdating(object sender, GridViewUpdateEventArgs e)
{
     int ID = int.Parse(gvArea.DataKeys[e.RowIndex].Value.ToString());
     string name = ((TextBox)(gvArea.Rows[e.RowIndex].Cells[1].FindControl("txtAreaName"))).Text.ToString().Trim();
     string description = ((TextBox)(gvArea.Rows[e.RowIndex].Cells[2].FindControl("txtAreaDescription"))).Text.ToString().Trim();

AreaDAO dao = new AreaDAO();
      dao.UpdateArea(name, description, ID);

gvArea.EditIndex = -1;
      GridViewDataBind();
}

取消

protected void gvArea_RowCancelingEdit(object sender, GridViewCancelEditEventArgs e)
{
       gvArea.EditIndex = -1;
       GridViewDataBind();
}

删除

Code
protected void gvArea_RowDeleting(object sender, GridViewDeleteEventArgs e)
{
      // 需要添加提示
       int id = Convert.ToInt32(gvArea.DataKeys[e.RowIndex].Value);
      AreaDAO dao = new AreaDAO();
      dao.Delete(id);

GridViewDataBind();
}

添加记录

Code
       //添加记录
        protected void btnAdd_Click(object sender, EventArgs e)
        {
            TextBox areaName = gvArea.FooterRow.FindControl("txtName") as TextBox;
            TextBox areaDescription = gvArea.FooterRow.FindControl("txtDescription") as TextBox;

AreaDAO dao = new AreaDAO();
            dao.InsertArea(areaName.Text.Trim(), areaDescription.Text.Trim());
            GridViewDataBind();
        }
        //取消
        protected void btnCancel_Click(object sender, EventArgs e)
        {
            gvArea.ShowFooter = false;
            GridViewDataBind();
        }
        //显示Footer
        protected void showAdd_Click(object sender, EventArgs e)
        {
            gvArea.ShowFooter = true;
            GridViewDataBind();
        }

很简单的东西长时间不用就忘记了,贴在这里待以后参考

转载于:https://www.cnblogs.com/xiaoN-2006/archive/2009/07/02/1515597.html

GridView绑定相关推荐

  1. Dev GridView 绑定Listlt;Tgt;、BindingList lt;Tgt;、BindingSource

    作者:jiankunking 出处:http://blog.csdn.net/jiankunking 今天听到同事处理数据结构的时候特意处理为了 BindingList<T>,据说可以直接 ...

  2. ASP.NET的属性绑定、表达式绑定、集合绑定、方法绑定、DropDownList集合绑定、DataList绑定、GridView绑定

    属性绑定 .aspx <%@ Page Language="C#" AutoEventWireup="true" CodeFile="Defau ...

  3. GridView绑定DataSet的DataTable,怎么让它在无记录时能显示表头呀(环境VS2005),在线等 谢谢!!

    主 题:   GridView绑定DataSet的DataTable,怎么让它在无记录时能显示表头呀(环境VS2005),在线等 谢谢!! 作 者:   bolowang (波罗王子)        ...

  4. ASP.NET—001:GridView绑定List、页面返回值

    用惯了WPF的绑定,ASP.NET的绑定貌似不是很好用.下面看看ASP.NET绑定的用法.一般来说可以直接绑定DataTable的,不过我觉得绑定List比较符合面向对象编程. 绑定的方法是两句代码: ...

  5. GridView绑定数据源 绑定DataReader /DataSet /DataTable

    有一个GridView1 <asp:GridView ID="GridView1" runat="server"></asp:GridView ...

  6. 使用Gridview绑定数据库中的图片

    注:此系列记录在我实际开发中遇到的问题和收藏一些技巧文章. 我们都知道,在Gridview中不能直接去绑定数据库中的图片,我们可以利用HttpHandler很容易的完成这个任务,在这里我记录一下这个过 ...

  7. html gridview绑定数据,winform,devexpress GridControl中GridView数据绑定

    当我们新建一下GridControl的时候,就会有一个默认的GridView,这时我们如何绑定数据到GridView上呢? 只需要一行代码就可绑定了,代码如下:gridControl1.DataSou ...

  8. WPF将数据库和GridView绑定并更改GridView模板

    首先来看一下如何使用GridView,在前台的话代码如下:这里仅仅举出一个例子,GridView是作为子项嵌套在ListView中的,这里的数据源是通过绑定的方式来绑定到GridView中的. < ...

  9. GridView绑定时间

    绑定时间,显示短日期格式,在这一列的属性里添加:DataFormatString="{0:d}" HtmlEncode="False" 转载于:https:// ...

  10. gridview绑定数据mysql_【gridview控件】怎么绑定数据库并显示?

    该楼层疑似违规已被系统折叠 隐藏此楼查看此楼 这是我在百度上搜出来的代码,结果我运行后还是不显示表中数据:(我做的过程是这样:新建一个aspx文件,然后托一个gridview和button控件,然后c ...

最新文章

  1. php psr2规范,PhpStorm集成PSR2代码自动检查 | 吴文辉博客
  2. ESXi安装全过程及基本配置
  3. IT项目管理总结:第四章 项目综合管理
  4. docker安装Elasticsearch
  5. BZOJ3019 : [Balkan2012]handsome
  6. 成为Java流大师–第5部分:将联接的数据库表转换为流
  7. Windows下搭建Octopress博客
  8. 推荐系统评价指标综述
  9. R语言爱好者必备——R语言速查表(高清版可下载)
  10. 收集 - 实际开发中的技巧记录【页面】
  11. 一个迅速崛起的国产开源OCR项目
  12. 浅谈互联网那些防不胜防的人肉搜索技巧
  13. V-Rep机器人仿真软件模型导入部分
  14. java代码实现分页_Java分页实现(示例代码)
  15. learning ddr tRP and tRP tRTP CL tRAS
  16. 白杨SEO:淘宝客、淘客是什么、赚钱方式及怎么入门和推广引流?
  17. 网盘下载速度太慢的话请看这里!
  18. 微信小程序 15 个人中心页
  19. 服务停止端口未释放_工信部出手!对通信短信息和语音呼叫服务管理公开征求意见...
  20. Python实时检测文件及文件夹变动

热门文章

  1. ie窗口如何最大化设置
  2. 中文转换为拼音插件guiHz2Py
  3. 工作流 java snaker_snaker工作流引擎
  4. 神威太湖之光超级计算机搭载了40960,神威·太湖之光超级计算机上实现了千万核超大规模并行计算...
  5. 《数据挖掘导论》读书笔记(一) -27
  6. 安防视频监控直播的画面都是如何采集的?
  7. 深度linux安装Qt后需要解决的问题
  8. JavaEE程序猿的Java世界观⑤
  9. 5000在线的服务器选择,支持负载5000人10000人在线的服务器的配置及其网络要求!!...
  10. Illegal command:debug错误