ASP.NET数据绑定GridView控件使用技巧

不得不说GridView控件的功能确实很强大,一个简简单单的控件就可以把数据管理的很美。在这两天做的任务中碰到的一些GridView控件中遇到的问题进行总结;

①:在GridView控件中随意显示数据库中的信息:

GridView控件中有一个AutoGenerateColumns属性,它的作用就是控制GridView控件是否在运行的时候自动生成相关联的列,一般情况下把这个属性设置成为false。因为我们需要的是一个DIY的GridView控件。然后点击右上角的箭头,选择编辑列添加一个BoundField字段,选择数据DataField属性,在后面填上自己想要显示数据库中某一列的列名,在外观HeaderText属性中填写数据库中要显示的列名加以提示。然后点击确定控件中就会显示如下图所示:

然后在asp后台中添加链接数据库代码就ok了。关于链接数据库的代码博主在博文“【ASP】用GRIDVIEW控件连接SQL SERVER数据库”中已经做了详细介绍,本文就不多说了。

②:在GridView控件中实现编辑删除的功能:

点击GridView控件右上角的箭头,选择编辑列,添加CommandField字段,设置此字段行为属性ShowDeleteButton和ShowEditButton为True。点击确定即可。结果如图下所示:

但是此时的编辑删除不会有任何功能。因为GridView控件中有好多事件,实现编辑删除功能是要触发相应的事件才可以用。

首先介绍第一个事件——RowEditing。运行页面的时候点击编辑会出现“更改”和“取消”。此事件的作用就是点击编辑时可以显示更新和取消。 RowCancelingEdit。运行页面的时候点击编辑会出现“更改”和“取消”,运行结果如下图所示:

双击此事件,在后台添加代码如下:

   protected void GridView1_RowEditing(object sender, GridViewEditEventArgs e)

    {

      GridView1.EditIndex = e.NewEditIndex;

      this.shuaxin();

    }

第二个事件——RowCancelingEdit       事件RowCancelingEdit就是实现取消功能。双击此事件填写代码如下:

   protected void GridView1_RowCancelingEdit(object sender, GridViewCancelEditEventArgs e)

   {

    GridView1.EditIndex = -1;

    this.shuaxin();

   }

第三个事件——RowUpdating实现更新功能,双击此事件添加代码如下:

    protected void GridView1_RowUpdating(object sender, GridViewUpdateEventArgs e)

    {

      this.GridView1.EditIndex = e.RowIndex;

      string title = GridView1.DataKeys[e.RowIndex].Value.ToString();

      string cotent = ((TextBox)(GridView1.Rows[e.RowIndex].Cells[1].Controls[0])).Text;

      string strsql = "update activities set cotent='" + cotent + "'

               where title='" + title + "'";

      SqlConnection con = new SqlConnection(ConfigurationManager.

                ConnectionStrings["username"].ConnectionString);

      SqlCommand cmd = new SqlCommand(strsql, con);

      con.Open();

      cmd.ExecuteNonQuery();

      con.Close();

      GridView1.EditIndex = -1;

      this.shuaxin();

    }

第四个事件——RowDeleting。此事件实现删除功能,双击事件添加代码如下:

    protected void GridView1_RowDeleting(object sender, GridViewDeleteEventArgs e)

    {

      string title = GridView1.DataKeys[e.RowIndex].Value.ToString();

      string delete = "delete activities where title='" + title + "'";

      SqlConnection con = new SqlConnection(ConfigurationManager.

                ConnectionStrings["username"].ConnectionString);

      SqlCommand cmd = new SqlCommand(delete, con);

      con.Open();

      cmd.ExecuteNonQuery();

      con.Close();

      GridView1.EditIndex = -1;

      this.shuaxin();  //自己写的链接数据库的方法;

    }

附:shuaxin();代码:

    private void shuaxin()

    {

      SqlConnection sqlcon = new SqlConnection(ConfigurationManager.

                 ConnectionStrings["username"].ConnectionString);

      sqlcon.Open();

      SqlDataAdapter da = new SqlDataAdapter(@"select * from activities", sqlcon);

      DataSet ds = new DataSet();

      da.Fill(ds);

      if (ds.Tables[0].Rows.Count > 0)

      {

        GridView1.DataSource = ds;

        GridView1.DataBind();

      }

      sqlcon.Close();

    }

注:GridView控件中有一个DataKeyNames属性,设置datakeyname是要在点击行时获得该行数据的主键,

以保证删除更新时准确性;若没有设置此属性就会出现如下结果:

以上就是关于ASP.NET数据绑定GridView控件使用技巧,希望对大家的学习有所帮助。

(0)

相关推荐

  • ASP.NET数据绑定之Repeater控件

    在ASP.NET的学习过程中,其控件的学习和使用占了很大的一部分,本文为大家介绍一下控件Repeater控件的使用,用它来绑定后台数据,然后在客户端(浏览器)上显示出来! 一. Repeater控件 1.用途:使用模板循环显示数据. 2.包含的模板: <ItemTemplate></ItemTemplate> 项目模板(里面的数据正常显示) <AlternatingItemTemplate></AlternatingItemTemplate> 交错显示模板(

  • ASP.NET数据绑定之DataList控件实战篇

    上篇文章大概讲了DataList的一些基础知识,掌握这些知识在将来的应用中起到很大的作用,现在我们就开始讲上篇文章中说的基础知识做一个小例子.     首先,我机子的数据库中有一张person表,如下图所示. 现在,我们用DataList控件将表中的信息显示出来,并可以在DataList控件上对数据库中的表进行编辑操作.     1.首先用vs创建web应用程序,添加web窗体,在web窗体内拉入DataList控件,右击控件,选择编辑项模板,在这里我们能看到四个模板,其中两个是Selected

  • ASP.NET数据绑定之GridView控件

    GridView 是 DataGrid的后继控件,在.net framework 2 中,虽然还存在DataGrid,但是GridView已经走上了历史的前台,取代DataGrid的趋势已是势不挡.  作用:其功能是在web页面中显示数据源中的数据.GridView和DataGrid功能相似,都是在web页面中显示数据源中的数据,将数据源中的一行数据,也就是一条记录,显示为在web页面上输出表格中的一行.     在此GirdView的详细属性和事件我不再阐述.下面我只是简单介绍一下GirdVi

  • 浅谈ASP.NET常用数据绑定控件优劣总结

    本文的初衷在于对Asp.net常用数据绑定控件进行一个概览性的总结,主要分析各种数据绑定控件各自的优缺点,以便在实际的开发中选用合适的控件进行数据绑定,以提高开发效率. 因为这些数据绑定控件大部分都已经封装的很好了,稍微有一些基础的朋友都可以很容易的上手使用,所以本文不涉及具体控件的使用,只在于分析各自的优劣点,但是在下一篇文章里,我会主要讲一下ListBox.GridView.Repeater这三个数据绑定控件的"高效分页",ListBox和GridView内置的有分页,但是其效率太

  • 总结Visual Studio下ASP.NET模板化控件中的数据绑定

    在模板化控件中绑定到数据 FormView.DataList.Repeater 和 ListView Web 服务器控件使用模板显示数据和检索用户输入,以插入.更新或删除数据.此外,您还可以将模板与 GridView 和 DetailsView 控件一同使用,以自定义数据布局. 通过将模板化控件的 DataSourceID 属性设置为数据源控件的 ID,可以将模板化控件绑定到数据源控件(例如 LinqDataSource.ObjectDataSource 或 SqlDataSource 控件).

  • 详解ASP.NET数据绑定操作中Repeater控件的用法

    一.绑定控件之Repeater .NET封装了多种数据绑定控件,诸如GridView.DataList等但该篇文章将会从Repeater入手,因为Repeater只提供了基本的数据绑定模板,没有内置其它分页等功能,所以它是最原始的数据绑定控件,只要能够熟练运用Repeater控件其它的绑定控件也就很简单了. 1.Repeater简介 Repeater 控件是基本模板化数据列表. 它不像GridView控件一样能够可视化的设计格式或样式,因此开发时在控件模板中必须显式声明所有格式.格式和样式标记.

  • ASP.NET数据绑定之DataList控件

    DataList控件是.NET中的一个控件.DataList控件以表的形式呈现数据(在属性生成器中可以编辑),通过该控件,您可以使用不同的布局来显示数据记录(使用模板编辑),例如,将数据记录排成列或行的形式.您可以对 DataList控件进行配置,使用户能够编辑或删除表中的记录(使用EditItemTemplate模板和SelectedItemTemplate模板).DataList控件不使用数据源控件的数据修改功能,您必须自己提供此代码. 一.DataList 与 Repeater比较    

  • AspNetAjaxPager,Asp.Net通用无刷新Ajax分页控件,支持多样式多数据绑定

    本控件可以对GridView,Repeater,DataGrid,DataList...几乎所有的.net数据绑定控件进行分页,全部无刷新,数据绑定部分可以使用存储过程也可以直接使用sql语句,这对本控件没有任何干扰!本控件具有较好的用户界面,能够根据需要变换各种样式,配合css控制效果则更好! 1.分页样式效果图: 2.如何使用: 于bin目录下添加:AspNetAjaxPager.dll引用 aspx文件内容: 复制代码 代码如下: <%@ Page Language="C#"

  • ASP.NET数据绑定控件详解

    ListBox.GridView.Repeater这三个数据绑定控件的"高效分页",ListBox和GridView内置的有分页,但是其效率太低了,少量的数据还可以,大量的数据根本就没法用,Repeater控件本身不提供分页,但是在实际的开发中可能也会有用到分页,所以也会给大家讲一下,Repeater的分页. 好了,现在开始进入正题,先从比较常用的控件说起. 一.GridView控件 主要特点:支持删.改,排序.分页.外观设置.自定义显示数据 缺 点:影响程序性能.不支持插入操作 这个

  • ASP.NET数据绑定GridView控件使用技巧

    不得不说GridView控件的功能确实很强大,一个简简单单的控件就可以把数据管理的很美.在这两天做的任务中碰到的一些GridView控件中遇到的问题进行总结: ①:在GridView控件中随意显示数据库中的信息: GridView控件中有一个AutoGenerateColumns属性,它的作用就是控制GridView控件是否在运行的时候自动生成相关联的列,一般情况下把这个属性设置成为false.因为我们需要的是一个DIY的GridView控件.然后点击右上角的箭头,选择编辑列添加一个BoundF

  • 灵活掌握asp.net中gridview控件的多种使用方法(下)

    继续上篇文章的学习<灵活掌握asp.net中gridview控件的多种使用方法(上)>,在此基础上巩固gridview控件的操作使用,更上一层楼. 11.GridView实现用"..."代替超长字符串: 效果图: 解决方法:数据绑定后过滤每一行即可 for (int i = 0; i <= GridView1.Rows.Count - 1; i++) { DataRowView mydrv; string gIntro; if (GridView1.PageIndex

  • 灵活掌握asp.net中gridview控件的多种使用方法(上)

    灵活使用asp.net中gridview控件的方法有很多种,本文内容很富,希望大家都能有所收获. 1.GridView无代码分页排序: 效果图: 小提示: 1.AllowSorting设为True,aspx代码中是AllowSorting="True": 2.默认1页10条,如果要修改每页条数,修改PageSize即可,在aspx代码中是PageSize="12". 3.默认的是单向排序的,右击GridView弹出"属性",选择AllowSort

  • asp.net的GridView控件使用方法大全

    前台.aspx 复制代码 代码如下: <asp:Label ID="tplb" runat="server" Text="总页数:"></asp:Label> <asp:Label ID="lblPageCount" runat="server" Text=""></asp:Label> <asp:Label ID="cur

  • asp.net中GridView控件遍历的小例子

    复制代码 代码如下: int intCount = this.GridView1.Rows.Count; //总行数for (int i = 0; i < intCount; i++){  Label1.Text = ((HyperLink)GridView1.Rows[i].Cells[0].Controls[0]).Text.ToString().Trim(); } for (i = 0; i < GridViewID.Rows.Count; i++){   CheckBox chkVot

  • Asp.net的GridView控件实现单元格可编辑方便用户使用

    最近做一个功能,考虑到用户使用方便,减少弹出页面,采用点"编辑"按钮无需弹出页面直接当前行的单元格内容就能编辑.进入页面显示如下图:  点"编辑"按钮后显示如下图:  编号为1的"星期"和"是否上班"均可编辑,编辑完成后,点"更新"保存. 第一张图中的数据加载是通过下述方法实现: protectedvoid GridView_RowDataBound(object sender, GridViewRowEv

  • 在ASP.NET 2.0中操作数据之四十九:为GridView控件添加RadioButton

    导言: GridView控件提供了大量的内置功能.它包含了一系列的域(field)来显示诸如text.images.hyperlinks和buttons.另外它支持模板(template)用于用户自定义界面.我们可以构建这样一个GridView控件,用户仅需要点击控件里的一个按钮,每一条记录行都可以选择.编辑.删除.除了控件本身内置的功能外,在某些情况下,我们添加一些额外的.控件没有内置的功能.在本章及接下来的2篇教程里我们将探讨如何优化GridView,以支持额外的功能. 本篇及接下来的教程将

  • 在ASP.NET 2.0中操作数据之十二:在GridView控件中使用TemplateField

    导言 GridView是由一组字段(Field)组成的,它们都指定的了来自DataSource中的什么属性需要用到自己的输出呈现中.最简单的字段类型是BoundField,它仅将数据简单的显示为文本.其他的字段类型使用交互HTML元素(alternate HTML elements)来显示数据.比如说,CheckBoxField将被呈现为一个CheckBox,其选中状态由某特定数据字段的值来决定:ImageField则将某特定数据字段呈现为一个图片,当然,这个数据字段中应该放的是图片类型的数据.

  • ASP.NET2.0中用Gridview控件操作数据的代码

    其中,在数据控件方面,增加了不少控件,其中的Gridview控件功能十分强大.在本文中,将探讨Gridview控件中的一些功能特性和用法,如果各位读者对Gridview控件不大了解,可以通过<使用ASP.NET 2.0中的Gridview控件>一文,来对Gridview控件有个初步的认识. 1.使用Gridview插入新记录 在Gridview控件中,可以实现插入新记录的操作(见<使用ASP.NET 2.0中的Gridview控件>)一文,但如果想实现在Gridview中,实现在G

随机推荐