在C#开发的winform程序中,datagridview是一个经常使用到的控件。它可以以类似excel表格的形式规范的展示或操作数据,我也经常使用这个控件。使用这个控件首先要掌握的就是如何向其中插入数据,直接在控件上操作的方法就不再赘述了,下面我将描述一下如何用代码向datagridview添加数据:

 public void additem(int ID,int id, string column1, string column2, string column3, string column4, string column5, string column6,
string column7)
{
//此处的代码不能进行循环!必须封装为一个方法,通过方法的循环,才能实现循环!
DataGridViewRow dgvr = new DataGridViewRow();
foreach (DataGridViewColumn c in this.DataGridView1.Columns)
{
dgvr.Cells.Add(c.CellTemplate.Clone() as DataGridViewCell);
}
dgvr.Cells[].Value = ID;
dgvr.Cells[].Value = id;
dgvr.Cells[].Value = column1;
dgvr.Cells[].Value = column2;
dgvr.Cells[].Value = column3;
dgvr.Cells[].Value = column4;
dgvr.Cells[].Value = column5;
dgvr.Cells[].Value = column6;
dgvr.Cells[].Value = column7;
this.DataGridView1.Rows.Add(dgvr);
}

这就是向datagridview里面添加一条数据的代码,想要实现更多的添加,只需循环添加即可:

 private void DataStart(string sql)
{
con = Utils.DBConnect.Open("FX.mdb");
string sqlStr = sql;
//获得数据源
reader = Utils.DBConnect.GetReader(sqlStr, con);
int id = ;//每行数据前的序号
while (reader.Read())
{
additem(reader.GetInt32(),id, reader.GetValue().ToString(), reader.GetValue().ToString(), reader.GetValue().ToString(),
reader.GetValue().ToString(), reader.GetValue().ToString(), reader.GetValue().ToString(),
reader.GetValue().ToString());
id++;
}
reader.Close();
con.Close();
}

这是通过sql语句,将数据库中的数据循环显示在datagridview里面。下面是这个函数的使用:

private void LoadFirst()
{
try
{
string tmpStr;
tmpStr = "select * from fx order by fxid desc";
DataStart(tmpStr);
}
catch
{
MessageBox.Show("数据库未连接正确!");
}
}

C# WinForm程序向datagridview里添加数据的更多相关文章

  1. foreach循环时动态往数组里添加数据

    今天在用TP做项目的时候遇到一个问题,foreach的时候需要动态往数组里添加数据,示例代码如下: $arr = array( array('id'=>'字符串1','name'=>'字符 ...

  2. winform datatable 或datagridview中添加列

    DataGridViewCheckBoxColumn dg = new DataGridViewCheckBoxColumn(); dg.HeaderText = "选择"; dg ...

  3. ScriptedSandbox64.exe 在写Winform程序Debug时不停提交数据

    抓包时发现不停的在提交数据,导致抓包内容看不到. 取消方式:Tools -> Options -> Debugging -> General -> Enable Diagnos ...

  4. C#WinForm中在dataGridView中添加中文表头

    第一步: 注意事项:(1)如果使用数据库,那么第三步的名称可以是任意的,但是不能和数据库中的列名一样,否则会报错:    (2)第四步的页眉文本就是你想用的中文列名,自己定: (3)第六步尤其重要,不 ...

  5. c# 如何给 dataGridView里添加一个自增长列(列名为序号)

    System.Data.DataTable table = new DataTable();                System.Data.DataColumn column = new Da ...

  6. 使用.net core3.0 正式版创建Winform程序

    前阵子一直期待.net core3.0正式版本的出来,以为这个版本出来,Winform程序又迎来一次新生了,不过9.23日出来的马上下载更新VS,创建新的.net core Winform项目,发现并 ...

  7. winform 实现两个datagridview之间的数据联动

    再做数据库开发的时候,经常会遇到表带上明细表,比如,一个学校有好多系,每个系又有好多专业.... 在winform中,都会使用datagridview来显示数据,现在就来说说如何实现之间的联动.比如现 ...

  8. visual studio 2010 winform程序不能添加对system.web的引用

    visual studio 2010 winform程序不能添加对system.web的引用[转载] 需要引用到System.Web.发现没有“System.Web”.在通过“浏览”方式,找到该DLL ...

  9. Winform中使用FastReport的DesignReport时怎样给通过代码Table添加数据

    场景 FastReport安装包下载.安装.去除使用限制以及工具箱中添加控件: https://blog.csdn.net/BADAO_LIUMANG_QIZHI/article/details/10 ...

随机推荐

  1. win7下载

    正式版WIN7的64位旗舰版 http://pan.baidu.com/share/link?shareid=60038&uk=3960800092 下面是正式win8Windows 8 64 ...

  2. 记一次基于Unity的Profiler性能分析

    A. WaitForTargetFPS: Vsync(垂直同步)功能所,即显示当前帧的CPU等待时间    B. Overhead:       Profiler总体时间-所有单项的记录时间总和.用于 ...

  3. UIStepper

    @在IOS5中增加了一个UIStepper的新控件,UIStepper可以连续增加或减少一个数值.控件的外观是两个水平并排的按钮构成,一个显示为“+”,一个显示为“-”. 1. 初始化控件 UISte ...

  4. html5重定义标签

    1.details: 可以同details与figure一同使用,定义包含文本 <details> <dd>无限互联1</dd><dd>无限互联1< ...

  5. 淘宝初始化css代码

    ;; } body, button, input, select, textarea { font:12px/1.5tahoma, arial, \5b8b\4f53; } h1, h2, h3, h ...

  6. Spring事务的传播特性和隔离级别

    事务的几种传播特性1. PROPAGATION_REQUIRED: 如果存在一个事务,则支持当前事务.如果没有事务则开启2. PROPAGATION_SUPPORTS: 如果存在一个事务,支持当前事务 ...

  7. javaNIO学习

    Buffer其实就是是一个容器对象,它包含一些要写入或者刚读出的数据.在NIO中加入Buffer对象,体现了新库与原I/O的一个重要区别.在面向流的I/O中,您将数据直接写入或者将数据直接读到Stre ...

  8. hdu----(4686)Arc of Dream(矩阵快速幂)

    Arc of Dream Time Limit: 2000/2000 MS (Java/Others)    Memory Limit: 65535/65535 K (Java/Others)Tota ...

  9. HDUOJ----2571(命运)(简单动态规划)

    命运 Time Limit: 2000/1000 MS (Java/Others)    Memory Limit: 32768/32768 K (Java/Others) Total Submiss ...

  10. poj1129 Channel Allocation(染色问题)

    题目链接:poj1129 Channel Allocation 题意:要求相邻中继器必须使用不同的频道,求需要使用的频道的最少数目. 题解:就是求图的色数,这里采用求图的色数的近似有效算法——顺序着色 ...