GridView控件想必写过程序的人都清楚,不必多介绍,它简单、易用的特性受到了很多程序猿们的青睐,它本身支持多种模板来显示数据、操作数据记录,可以实现对数据库信息的查询、显示、删除、修改等一些儿基本的操作,因此,它常常是我们编程人员的首选对象,下面我简单说一下这些基本的功能如何实现,挺简单的。

首先,给GridView设置数据源,可以启动设置向导进行设置也可以在代码里面进行设置,如下:

【设置向导】

这种方法只需按提示操作即可,无需多说,自己动手操作一下便可知道。

【手动绑定数据】

BandGridView是一个自定义方法用于绑定数据源,把GridView绑定到了表默认视图上,如果有用到GridView的地方,调用该函数即可。

        private void BandGridView(){//GridViewManager启动数据库连接作用GridViewManager gvwManager = new GridViewManager();//实例化表对象DataTable dt = new DataTable();//查询数据库表,返回表dt = gvwManager.SelectPetCategory();//给GridView绑定表视图gvwShow.DataSource = dt.DefaultView;//绑定数据gvwShow.DataBind();}

【 添加编辑列模板】

绑定数据表中想要显示的字段,并且设置其字段名(DataField)和显示名称(HeaderText)

【添加操作列】

         (编辑、更新、删除)

编辑、更新、取消事GridView自带的事件类型,当进入编辑、更新等时会触发该事件,要为事件编写执行代码,如下:

【编辑】

        /// <summary>/// 当单击某一“编辑”按钮以后,GridView控件进入编辑模式之前发生/// </summary>/// <param name="sender"></param>/// <param name="e"></param>protected void gvwShow_RowEditing(object sender, GridViewEditEventArgs e){//进入编辑状态gvwShow.EditIndex = e.NewEditIndex;//重新绑定BandGridView();}

【更新】

        /// <summary>/// 当单击某一“更新”按钮以后,GridView控件进入更新模式之前发生/// </summary>/// <param name="sender"></param>/// <param name="e"></param>protected void gvwShow_RowUpdating(object sender, GridViewUpdateEventArgs e){//获取选择行的主键值string aa = gvwShow.DataKeys[e.RowIndex].Value.ToString();//获取更新后文本框中的值string text = ((TextBox)gvwShow.Rows[e.RowIndex].Cells[1].Controls[0]).Text.ToString();//取消编辑状态gvwShow.EditIndex = -1;//重新绑定BandGridView();}

【取消】

        /// <summary>/// 当单击某一“取消”按钮以后,GridView控件进入取消模式之前发生/// </summary>/// <param name="sender"></param>/// <param name="e"></param>protected void gvwShow_RowCancelingEdit(object sender, GridViewCancelEditEventArgs e){//取消编辑状态gvwShow.EditIndex = -1;//重新绑定BandGridView();}

【添加删除操作列】

        protected void gvwShow_RowDataBound(object sender, GridViewRowEventArgs e){//为LinkButton按钮增加属性“删除提示框”((LinkButton)e.Row.Cells[1].Controls[0]).Attributes.Add("onclick", "javascript:return confirm('你确认要删除')");}

GridView不仅仅可以实现数据的显示、编辑、删除、更新等操作,还可以实现鼠标滑过时高亮显示、选中多行、隐藏列、链接跳转、详细信息显示、自动双向排序等很多功能,它无疑给我们对数据的操作带来了莫大的帮助,是一把数据方面的利器,再多的功能也是为了实现方便用户浏览、观看,起到数据应用于实际当中,我觉的还应有一些更智能的功能加入进来,而不只是由我们来写代码实现,例如:有关数据透视、数据挖掘、数据整合一些智能功能应当加入控件中,它将更有利于我们的应用。

每个功能在于自己的理解和应用,学习是为了应用,学以致用嘛,更多功能将在下一篇博客介绍。

转载于:https://www.cnblogs.com/lilongsheng1125/archive/2012/12/25/4978614.html

“0”基础让你学会 GridView (一)相关推荐

  1. 观韩顺平的《0基础30天学会Java》后感

    万丈高楼平地起,在韩老师的带领下你的筑基期肯定很强,日后成仙指日可待. 开门先说重点:一定要加韩老师微信要资料!一定要加韩老师微信要资料!一定要加韩老师微信要资料!,重要的事情说三遍,千万不要去官网下 ...

  2. 0基础1天学会js-第二讲

    上一讲讲述了js的基本概念,本文将讲解js的操作符,计算由数据和运算符组成,可想而知,运算符的重要性.运算符简单来说就是做什么操作,比如加法,乘法等.视频教程请点击这里 算数运算符 算数运算符,就是做 ...

  3. 0基础学python难吗-0基础学Python有多难?该怎么入门?

    0基础学Python有多难?该怎么入门?零基础学Python并不难,因为Python是一门非常适合初学者入门的编程语言.Python语法简单明了,代码可读性很高,容易入门.但Python对代码的要求非 ...

  4. 0基础学python有多难-0基础学Python有多难?

    0基础学Python有多难?该怎么入门?零基础学Python并不难,因为Python是一门非常适合初学者入门的编程语言.Python语法简单明了,代码可读性很高,容易入门.但Python对代码的要求非 ...

  5. 网上学python靠谱吗-0基础自学Python靠谱吗?如何快速学会?

    零基础情况下,如何系统地自学Python?有没有快速入门的方法呢?今天我们来看看前辈的经验. 1 说实话,我看到过的0基础,或者基础不多的人,自学python学下来的真不多. 然后有c++基础,jav ...

  6. python没有英语基础的好学吗-Python好学吗难不难?0基础能学会吗?

    大家都知道,Python是一门非常不错的编程语言,应用领域广泛,薪资待遇高,发展前景也是非常不错的,吸引了很多爱好者,那么Python好学吗难不难?零基础可以学会吗? 1.Python好学吗?0基础可 ...

  7. 0基础学编程难吗?多久能学会?转行IT常见的4个问题

    近期收到很多大四或大三学生的问题,虽然有疑问,但这些人大部分还都是守得云开见月明的,毕竟他们已经从各个渠道了解到了编程并没有想象中的那么高不可得而是可以通过自己的学习,进入到这个行业里.这让他们有了新 ...

  8. python好学吗要有什么基础-Python好学吗难不难?0基础能学会吗?

    大家都知道,Python是一门非常不错的编程语言,应用领域广泛,薪资待遇高,发展前景也是非常不错的,吸引了很多爱好者,那么Python好学吗难不难?零基础可以学会吗? 1.Python好学吗?0基础可 ...

  9. 0基础学python要多久-自学Python要学多久可以学会?

    如果是自学,从零基础开端学习python的话,按照每个人理解能力的不同,大致上需求半年到一年半左右的时刻,当然,如果有其它编程言语的经历,入门还是比较快的,大概需求2~3个月可以用Python言语编写 ...

  10. 0基础该如何学Python?这些方法你必须了解

    往期好文推荐 学习Python不需要程基础? 0基础不用怕,从0到1轻松教你入门Python 由于python在人工智能,机器学习,大数据,数据分析,网络爬虫,全方位的技能特点,是非常适合初学者入门和 ...

最新文章

  1. 这样你的电脑还不玩完!?
  2. Mysql日期时间Extract函数介绍
  3. linux kernel基本构成的内容有下列哪些项_Linux_GUI加速(2)_Linux中的DRM-KMS分析
  4. vue 2个方法先后执行_浅析Vue的2个版本
  5. Windows 命令终端(CMD)的快捷键
  6. Linux Ubuntu 安装编译Opencv 3.4.3 C++开发环境
  7. wps姓名隐藏为星号_EXCEL里如何给姓名手机号身份证号等隐私信息设置星号隐藏起来?...
  8. linux音乐关机,在Deepin操作系统中关闭或者更改开机关机音乐的方法
  9. 2019蓝桥杯C++B:等差数列(详解)
  10. Deep Speaker: an End-to-End Neural Speaker Embedding System
  11. getch方法_如何实现getch()函数的功能
  12. NETBIOS/NETBEUI 协议 SAMBA
  13. 计算机考研2017真题408,2017计算机408考研真题‌.pdf
  14. Latex 之 双栏 末页对齐 -- 导言区加入 \usepackage{flushend}
  15. 2021年优秀网络虚拟化解决方案
  16. Windows.ScreenToClient
  17. H3C VRRP实验
  18. 腾讯企业版邮箱服务器类型,腾讯邮箱企业版怎样开通,企业邮箱服务器系统申请...
  19. excel多个工作表汇总怎么做?
  20. 第一篇:微信公众平台开发实战Java版之了解微信公众平台基础知识以及资料准备

热门文章

  1. 每日一题/011/线性代数/高等代数/两个上三角矩阵的乘积还是上三角矩阵
  2. android加载图片+背景,Android开发中ImageLoder加载网络图片时将图片设置为ImageView背景的方法...
  3. matlab里日期函数,matlab中如何获取当前日期时间函数的具体应用如下
  4. jmeter监控服务器的方法
  5. Redis4.0之持久化存储
  6. FutureTask 源码解析
  7. (转)根据两点经纬度计算距离
  8. Design and Model Analysis of the E-Commerce Development Platform for 3-Tiered Web Applications
  9. 标 题: 三维游戏里面的自动寻路的算法可能是什么样的?
  10. Delphi如何调用C++写的DLL