DataView就是表示用于排序,筛选,搜索,编辑个导航的DataTable的可绑定数据的自定义视图。DataView提供基础DataTable中数据的动态视图
创建DataView对象:
创建DataView的方法有两种:可以使用DataView构造函数。也可以创建对DataTable的DefaultView属性的引用.
例如:
DataView dv=new DataView(table);
DataView dv=table.DefaultView;

由于在创建DataView时以及在修改任何Sort,RowFilter或RowStateFilter属性都会生成DataView的索引,所以当创建DataView时,通过以构造函数的形式提供任何初始排序顺序或筛选条件,可以实现最佳性能。如果在不指定排序或筛选条件的情况下创建DataView,然后设置Sort,RowFilter或RowStateFilter属性,这会使索引至少生成两次:一次是在创建DataView时,另一次是在修改任何排序或者筛选条件时。
DataView的一个主要功能是允许在Window窗体和Web窗体上进行数据绑定。
若要创建数据筛选和排序视图,可以设置RowFilter和Sort属性,然后使用Item属性返回单个DataRowView还可以使用AddNew和Delete方法从行的集合中进行添加和删除。在使用这些方法时,可设置RowStateFilter属性以便指定只有已被删除的行或新行才可由DataView显示。
注意:
                        DataView dv=new DataView(ds.Tables["student"]);

也可以写成:DataView dv=ds.Tables["student"].DefaultView;

一:取出筛选的符合条件记录的条数 
DataView mydv = new DataView();
mydv = DataSet1.Tables[0].DefaultView;
mydv.RowFilter = "分数>=50";
int count = mydv.Count;
//上面的代码取出DataSet1中符合条件"分数>=50"的记录的条数。
二:显示符合条件的记录表
DataView mydv = new DataView();
mydv = DataSet1.Tables[0].DefaultView;
mydv.RowFilter = "分数>=50";
GridView1.DataSource = mydv;
GridView1.DataBind();
//上面的代码取出DataSet1中符合条件"分数>=50"的记录并在gridview1中显示出来。
三:直接使用符合条件记录的值 
常见的错误写法:
DataView mydv = new DataView();
mydv = DataSet1.Tables[0].DefaultView;
mydv.RowFilter = "学号=50";
Label1.Text= mydv.Table.Rows[0]["分数"].ToString();
//mydv.Table里面表的值是原始表的值,并不是条件筛选后的表的值。 
一种正确的写法:
DataView mydv = new DataView();
mydv = DataSet1.Tables[0].DefaultView;
mydv.RowFilter = "学号=50";
Label1.Text= mydv.ToTable("table1").Rows[0]["分数"].ToString();
//通过把mydv转换成表,再从表中取记录就是经过条件筛选的记录了。

DataView的用法相关推荐

  1. dataView及其用法

    dataView及其用法 创建DataView public DataView(); public DataView(DataTable); DataView只有同已经存在的.很可能是非空的DataT ...

  2. DataView对象的用法 1207

    DataView对象的用法 1207 实例化 new DataView(); DataView dv = new DataView(); 从仓库获取数据 dv对象.Table = 仓库.Tables[ ...

  3. c#dataview遍历_[C#] DataView用法

    [C#] DataView用法 - - 在实际编程工程中,常常遇到这样的情况:DataTable并不是数据库中的,或者DataTable尚未写到数据库,或者从数据库中读出的DataTable已经在本地 ...

  4. using的几种用法 C#

    //using 用作命名空间指示符 using System; using System.Collections.Generic; using System.Text; using System.IO ...

  5. DataTable、DataView、ListBox 数据绑定与查询

    DataTable的一些特殊用法:Select /**//*  * 补充一下,还可以利用DataView来达到检索的目的.  */  DataTable dataSource = new DataTa ...

  6. 数据绑定以及Container.DataItem几种方式与用法分析 收藏

    数据绑定以及Container.DataItem几种方式与用法分析 收藏 灵活的运用数据绑定操作         绑定到简单属性:<%#UserName%>         绑定到集合:& ...

  7. wxWidgets:wxDataViewTreeCtrl类用法

    wxWidgets:wxDataViewTreeCtrl类用法 wxWidgets:wxDataViewTreeCtrl类用法 用法详细说明 wxWidgets:wxDataViewTreeCtrl类 ...

  8. wxWidgets:wxDataViewModel类用法

    wxWidgets:wxDataViewModel类用法 wxWidgets:wxDataViewModel类用法 用法详细说明 wxWidgets:wxDataViewModel类用法 用法详细说明 ...

  9. wxWidgets:wxDataViewEvent类用法

    wxWidgets:wxDataViewEvent类用法 wxWidgets:wxDataViewEvent类用法 用法详细说明 wxWidgets:wxDataViewEvent类用法 用法详细说明 ...

最新文章

  1. RPC 笔记(03)— gRPC 概念、安装、编译、客户端和服务端示例
  2. nginx tomcat https
  3. 成为一流CSS设计师的8大技巧
  4. 使用python对比两个目录下的文件名差异
  5. Python如何实现单例模式?其他23中设计模式python如何实现?
  6. 聚类分析(Clustering Analysis)
  7. angular中父组件给子组件传值-@input
  8. 架构实战:(一)Redis采用主从架构的原因
  9. Which path should be used jdk or jre for JAVA_HOME environment variable?
  10. vsftpd创建虚拟用户,解决本地用户不安全问题,增强服务器安全性
  11. csdn 获取下载积分
  12. 基于STM32的汽车智能灯光控制系统
  13. 学习笔记 | 非负矩阵分解(NMF)浅析
  14. 机器之心 Pro·AI 趋势先锋 Insight 榜单发布
  15. 机器学习项目(五) 电影推荐系统(二)
  16. 2021年危险化学品经营单位安全管理人员模拟试题及危险化学品经营单位安全管理人员证考试
  17. 后端程序员必备的 Linux 基础知识
  18. 机器人李继红_李继宏
  19. 记一次·ulimit: open files: cannot modify limit:不允许操作
  20. ffmpeg 命令图片和视频相互转换

热门文章

  1. HTTP 常用的方法是什么,各自含义是什么?
  2. 我要双休,单休等于没有休
  3. Sigmoid函数的作用
  4. CRM的客户数据模型:UDM中的人(people)和组织(organization)(IV)
  5. 花了2小时,搭建了一个物联网项目,值了 ~
  6. 第一周 周报
  7. 前端面试题 - 面试
  8. 系统架构设计师-软件水平考试(高级)-论文-架构风格
  9. win8电脑打不开html文件,Win8网页打不开qq能上_Win8能上qq打不开网页怎么办?-192路由网...
  10. tableau制作人口金字塔图/旋风图