详细讲解了C#开发中数据类型DataTable的使用,包括新建DataTable,查询DataTable,在DataTable里添加记录,添加 列,修改列的属性以及修改某行某列的值的方法。同时说明了将DataTable作为LoopUpEdit控件的数据源时的注意点。

string userid = "UserID = {0}";             //查找初审人,流程阶段为初审,权限类型为受理             IList list_InitAudUser = ManagerFactory.GetS_UserAcce_FlowManager().SearchUsers(p_ywtype, 10100002, 10110001);

//新建DataTable,包含两列,并对它进行赋值             DataTable table_InitAudUser = new DataTable();             table_InitAudUser.Columns.Add("UserID", typeof(int));             table_InitAudUser.Columns.Add("RealName", typeof(string));             DataRow row_InitAudUser = null;            for (int i = 0; i < list_InitAudUser.Count; i++)             {                 row_InitAudUser = table_InitAudUser.NewRow();                 S_UserAcce_Flow s_UserAcce_Flow = list_InitAudUser[i] as Model.S_UserAcce_Flow;                 row_InitAudUser["UserID"] = s_UserAcce_Flow.USERID;                 //对USERID进行翻译                 row_InitAudUser["RealName"] = ManagerFactory.GetS_USERManager().GetRealNameByID(s_UserAcce_Flow.USERID);                 table_InitAudUser.Rows.Add(row_InitAudUser);             }

//查询,查不到则添加             DataRow[] scr_row = table_InitAudUser.Select(string.Format(userid, scr));             if (scr_row.Length == 0)             {                 row_InitAudUser = table_InitAudUser.NewRow();                 row_InitAudUser["UserID"] = scr;                 row_InitAudUser["RealName"] = ManagerFactory.GetS_USERManager().GetRealNameByID(scr);                 table_InitAudUser.Rows.Add(row_InitAudUser);             }

//将DataTable作为LookUpEdit控件的数据源,注意将控件的列的属性和DataTable里列的属性一一对应             this.lookUpEdit_IniAudPer.Properties.ValueMember = "UserID";             this.lookUpEdit_IniAudPer.Properties.DisplayMember = "RealName";             this.lookUpEdit_IniAudPer.Properties.DataSource = table_InitAudUser;

附:1、修改DataTable里列的属性:先得到该列,再修改其属性,如下: table_InitAudUser.Columns["UserID"].DataType=Type.GetType("System.bool");

2、修改某行某列的值:

for (int i = 0; i < table_InitAudUser.Rows.Count; i++)

table_InitAudUser.Rows[i]["RealName"] = "泽泽";

DataTable的新建、查询、添加和修改的更多相关文章

  1. ASP.NET MVC搭建项目后台UI框架—6、客户管理(添加、修改、查询、分页)

    目录 ASP.NET MVC搭建项目后台UI框架—1.后台主框架 ASP.NET MVC搭建项目后台UI框架—2.菜单特效 ASP.NET MVC搭建项目后台UI框架—3.面板折叠和展开 ASP.NE ...

  2. vs2017 + miniUI + dapper 添加、修改、删除、查询操作

    A.数据库表引用先前建立的company 公司信息表. B.建立文件: views > Home > Company.cshtml(新建文件) ,代码如下(直接复制即可) @{ Layou ...

  3. MVC客户管理(添加、修改、查询、分页)

    ASP.NET MVC搭建项目后台UI框架—6.客户管理(添加.修改.查询.分页)   目录 ASP.NET MVC搭建项目后台UI框架—1.后台主框架 ASP.NET MVC搭建项目后台UI框架—2 ...

  4. Hibernate的四种查询方式(主键查询,HQL查询,Criteria查询,本地sql查询)和修改和添加

    Hibernate的添加,修改,查询(三种查询方式)的方法: 案例演示: 1:第一步,导包,老生常谈了都是,省略: 2:第二步,创建数据库和数据表,表结构如下所示: 3:第三步创建实体类User.ja ...

  5. Jquery EasyUI的添加,修改,删除,查询等基本操作介绍

    http://www.jb51.net/article/42016.htm 初识Jquery EasyUI看了一些博主用其开发出来的项目,页面很炫,感觉功能挺强大,效果也挺不错,最近一直想系统学习一套 ...

  6. SQL语句添加删除修改字段及一些表与字段的基本操作

    用SQL语句添加删除修改字段 1.增加字段     alter table docdsp    add dspcode char(200)2.删除字段     ALTER TABLE table_NA ...

  7. Quartz动态添加,修改,删除任务(暂停,任务状态,恢复,最近触发时间)

    首页 博客 学院 下载 图文课 论坛 APP 问答 商城 VIP会员 活动 招聘 ITeye GitChat 写博客 小程序 消息 登录注册 关闭 quartz_Cron表达式一分钟教程 09-05 ...

  8. 用SQL语句添加删除修改字段、一些表与字段的基本操作、数据库备份等

    用SQL语句添加删除修改字段 1.增加字段 alter table docdsp add dspcode char(200) 2.删除字段 ALTER TABLE table_NAME DROP CO ...

  9. SQL语句添加删除修改字段[sql server 2000/2005]

    用SQL语句添加删除修改字段1.增加字段     alter table docdsp    add dspcodechar(200)2.删除字段     ALTER TABLE table_NAME ...

  10. SQL语句添加删除修改字段

    用SQL语句添加删除修改字段1.增加字段     alter table docdsp    add dspcodechar(200)2.删除字段     ALTER TABLE table_NAME ...

随机推荐

  1. fix org.openqa.selenium.NoSuchWindowException when find element on windows8.1 ie11.

    Steps:1.I was able to resolve the issue after adding the site URL under trusted sites of IE. The sam ...

  2. JS 原型链学习总结

    废话篇: 在js的学习过程中有一大难点就是原型链.学习的时候一直对这一内容不是十分的明白.纠结的我简直难受.,幸好总算给他弄通了,哇咔咔,总算可以不用在睡梦中还想着他了. 正文篇: 要了解原型链我们首 ...

  3. android 内存溢出问题分析

      最近的项目中,内存一直再增长,但是不知道是什么问题,导致内存溢出,在网上看到了这么一篇关于内存分析与管理的文章,解决了部分问题,感觉这篇文 章还不错,就转帖到我的blog上了,希望对大家有所帮助. ...

  4. 深入理解Java对象的序列化与反序列化的应用

    当两个进程在进行远程通信时,彼此可以发送各种类型的数据.无论是何种类型的数据,都会以二进制序列的形式在网络上传送.发送方需要把这个Java对象转换为字节序列,才能在网络上传送:接收方则需要把字节序列再 ...

  5. js之客户端检测

    1 能力检测判断是否有某个属性或方法,例:在低版本中的opera浏览器中,window下有个opera属性 if (window.opera) { alert("opera"); ...

  6. 【第七篇】bootstrap的3级菜单样式,支持母版页保留打开状态

    razor视图的,母版页 依旧不多说,直接上代码 <ul class="sidebar-menu"> @for (int i = 0; i < mList.Cou ...

  7. phpcms还原被删除的栏目

    1.在这个目录下/caches/bakup/default导出文件category.sql 2.登录网站的数据管理页面phpmyadmin 3.导入数据库选择category.sql 4.登陆网站后台 ...

  8. 【英语】Bingo口语笔记(9) - 表示“不相信”

  9. 【解题报告】PKU 2826 An Easy Problem?!

    原题链接:http://poj.org/problem?id=2826 一题很蛋疼的一题.目前为止还有一个问题我没搞清楚,问题注在代码中. 题目大意: 外面下雨了,农民Johnoson的bull(?? ...

  10. table 锁定表头,出滚动对齐

    前一段时间来了一个汇总的需求,想锁定表头,这个问题在网上找了老半天,实现起来都比较麻烦,经过这几天的摸索终于找到一个简洁的处理方法 下面介绍一下如何处理的: 1.thead 和tbody 放两个tab ...