DataGridView的属性:
AllowUserToAddRows:如果为true允许用户添加行,false不允许用户添加行
ReadOnly:true表示只读、不能修改单元格中的值,false可以对单元格进行修改
SelectionMode:FullRowSelect表示点击单元格选择整行
MultiSelect:true表示可以选多行,false表示不可以选多行
DataSource:绑定数据源
Colunms:列的集合

DataGridView中列的属性:
DataPropertyName:设置要和数据源中的哪个列进行绑定
HeaderText:设置当前列的名称
Visible:设置当前列是否可见
Frozen:设置当前列是否冻结(与excel中的冻结窗体类似)
ReadOnly:设置当前列是否只读

获取选中的行,列的单元格

this.dgvShow.CurrentRow.Cells[0].Value.ToString();//获取dgv里面选中的列的第一个值

//SelectedRows被选中的行的集合,SelectedRows[0]获取集合中的第一行
 //Cells代表数据行中单元格的集合,Cells[0]获取第一个单元格
  this.dgvStudents.SelectedRows[0].Cells[0].Value.ToString();

public partial class DataGridView的使用 : Form
    {
        public DataGridView的使用()
        {
            InitializeComponent();
        }

SqlDataAdapter sda = null;
        DataSet ds = null;

//数据源为DataTable
        //private void DataGridView的使用_Load(object sender, EventArgs e)
        //{
        //    string sql = "select StuNo,StuName,StuAge,StuSex from Student";
        //    SqlConnection conn = DBHelper.GetConnection();
        //    sda = new SqlDataAdapter(sql, conn);
        //    ds = new DataSet();
        //    sda.Fill(ds);
        //    DataTable table = ds.Tables[0];
        //    //给DataGridView绑定数据源
        //    this.dgvStudents.DataSource = table;
        //}

//数据源为DataView
        private void DataGridView的使用_Load(object sender, EventArgs e)
        {
            string sql = "select StuNo,StuName,StuAge,StuSex from Student";
            SqlConnection conn = DBHelper.GetConnection();
            sda = new SqlDataAdapter(sql, conn);
            ds = new DataSet();
            sda.Fill(ds);
            DataTable table = ds.Tables[0];
            //给DataGridView绑定数据源
            DataView dv = table.DefaultView;
            dv.Sort = "StuAge desc";//排序
            dv.RowFilter = "StuAge>22";//筛选行
            this.dgvStudents.DataSource = dv;
        }

//批量修改
        //优点:功能强大、操作简单、代码简洁
        //缺点:1、只能操作一个表  2、操作的数据集中必须包含主键
        private void btnUpdate_Click(object sender, EventArgs e)
        {
            SqlCommandBuilder builder = new SqlCommandBuilder(sda);
            sda.Update(ds);
            MessageBox.Show("修改成功!");
        }
    }

DataGridView的使用和批量修改的更多相关文章

  1. c# 适配器批量修改

    DataTable dt; //在方法外部申明数据表SqlDataAdapter adapter; //在方法外部申明数据适配器 查询方法adapter = new SqlDataAdapter(Sq ...

  2. mac linux rename命令行批量修改文件名

    我的mac使用命令行批量修改名字时发现居然没有rename的指令: zsh: command not found: rename 所以使用HomeBrew先安装一下: ➜ ~ brew install ...

  3. MYSQL批量修改表前缀与表名sql语句

    修改表名 ALTER TABLE 原表名 RENAME TO 新表名; 一句SQL语句只能修改一张表 show tables; 1. SELECT CONCAT( 'ALTER TABLE ', ta ...

  4. 使用powershell批量修改文本为utf8

    根据上一篇powershell生成pro的方法,增加一个批量修改文本文件为utf8格式的方法 $incPath = dir -filter "*.c" -Recurse $temp ...

  5. nodejs 批量修改、删除

    aaarticlea/png;base64,iVBORw0KGgoAAAANSUhEUgAAB4AAAAQhCAIAAABDaAVHAAAgAElEQVR4nOydeXxU5aH359733vd9b/ ...

  6. iOS --- DIY文件名批量修改

    批量修改文件名: // 1.创建文件管理 NSFileManager *filemanager =[NSFileManager defaultManager]; // 2. 获得所有文件夹路径 NSS ...

  7. ansible非root用户批量修改root密码

    前言: 由于线上服务器密码长久没有更新,现领导要求批量更换密码.线上的之前部署过salt,但由于各种因素没有正常使用. 使用自动化工具批量修改的计划搁浅了,后来领导给了个python多线程修改密码脚本 ...

  8. Python 批量修改文件名

    最近下载了几部美剧(越狱.迷失.权利的游戏......),每集文件名都好长好长..想改短一些,但一个一个改太累了,于是写了个脚本来实现批量修改: 修改前文件名: 修改后文件名: 代码实现: #enco ...

  9. 批量修改sql server 2008的架构

    --批量修改架构.名称为XJADMINATT的所有表修改为dbo-- --把执行的结果,拷贝到命令行,执行命令即可-- declare @name sysname declare csr1 curso ...

随机推荐

  1. java jdk缓存-128~127的Long与Integer

    先推断下以下代码的输出结果 Qa:----------------------------------------------           Long a = Long.valueOf(127) ...

  2. 创建和分析excel文件

    jxl.jar:下载地址:http://download.csdn.net/detail/xuxu198899223/7717737 package excel; public class BookV ...

  3. HDU 4292Food(网络流的最大流量)

    职务地址:HDU 4292 水题. 因为每一个人仅仅能有1份,所以须要拆点限制流量.建图方法为,建一源点与汇点.将食物与源点相连,权值为食物额数量,将饮料与汇点相连,权值为饮料数量..然后将人进行拆点 ...

  4. Java变量参数

    Java1.5添加新功能:可变参数:它适用于参数不确定性的数量,判断形势的类型.java变量参数数组操作. 特点: 1.今天的参数列表只能持续. 2.省略号(...)位于变量类型和变量名之间,前后有无 ...

  5. printf 对齐

      printf关于对其的问题(参考有关博客加上自己的一些总结) 1.关于左对齐或右对齐问题, 默认的如果%后没有“-”是右对齐的,如果%后跟“0”,不足的个数用0来填充, 例如:printf(&qu ...

  6. View Component

    View Component 在之前的MVC中,我们经常需要类似一种小部件的功能,通常我们都是使用Partial View来实现,因为MVC中没有类似Web Forms中的WebControl的功能. ...

  7. Git批量删除

    Git批量删除 git的改动都需要stage过程后才能commit.当git中有大量改动时就需要能够批量操作在方便.改动分三种: modify: 有文件修改 add: 有文件增加 rm: 有文件删除 ...

  8. [ Swift框架 ] # SwiftyJSON

    Swift写的关于转化JSON数据 https://github.com/SwiftyJSON/SwiftyJSON

  9. 拾人牙慧,浅记一些C++的类

    这两天没事又翻了翻Primer,发现自己上岁数了,记单词能力开始下降,索引把一些简单的例子记下来,把一些肥肉剔除,剩一下骨头,方便今后Ctrl+F.  在此感谢:   http://ticktick. ...

  10. PHP 17: MySQL的简单介绍

    原文:PHP 17: MySQL的简单介绍 这一章将简单介绍MySQL的基本知识. 本文来自http://lib.hackbase.com/html/8/35125.htm. MySQL是最受欢迎的开 ...