C# DataGridView转DataTable

        public static DataTable ToDataTable(this DataGridView dataGridView, string tableName = null)
        {
            DataGridView dgv = dataGridView;
            DataTable table = new DataTable(tableName);

            for (int iCol = 0; iCol < dgv.Columns.Count; iCol++)
            {
                table.Columns.Add(dgv.Columns[iCol].Name);
            }

            foreach (DataGridViewRow row in dgv.Rows)
            {
                DataRow datarw = table.NewRow();
                for (int iCol = 0; iCol < dgv.Columns.Count; iCol++)
                {
                    datarw[iCol] = row.Cells[iCol].Value;
                }
                table.Rows.Add(datarw);
            }

            return table;
        }
时间: 2024-10-06 13:28:09

C# DataGridView转DataTable的相关文章

datagridview 绑定 datatable

if (dt != null) { DataGridViewColumn dgvc = null; this.dataGridView1.DataSource = null; this.dataGridView1.Columns.Clear(); foreach (DataColumn dc in dt.Columns) { dgvc = new DataGridViewColumn(); dgvc.Name = dc.ColumnName; dgvc.HeaderText = dc.Colum

C# DataGridview转换为DataTable

如已绑定过数据源: DataTable dt = (dataGridView1.DataSource as DataTable) 如未绑定过数据源: public DataTable GetDgvToTable(DataGridView dgv) { DataTable dt = new DataTable(); // 列强制转换 for (int count = 0; count < dgv.Columns.Count; count++) { DataColumn dc = new DataC

[WinForm] DataGridView绑定DataTable,ComboBox列绑定Dictionary

一  需求介绍 一般像枚举类型的数据,我们在数据库里存储着诸如(1.2.3.4-)或者("001"."002"."003"-)此类,但是界面上我们想要显示的是具体的文本内容,以便用户理解使用.所以在从数据库中加载出来的数据DataTable绑定到DataGridView上时,就需要其中一些枚举列采用下拉框,并绑定对应的枚举数据源. 二  具体实现 首先,如果 DataGridView 的 AutoGenerateColumns 为 true 时,

导出DataGridView、DataTable到Excel

  最近遇到导出DataGridView到Excel速度慢问题,数据量不大,但其中有几列字段很大(汉子2000左右),查了网上许多方法要么还是慢, 要么不能正常运行;修改一下,调试通过,导出比以前快很多,而且不会再卡死.整理如下: 用Excel将要生成的表格设计好: 另存为XML表格: 用文本编辑器打开保存的xml: 找到Table节点,将节点的ss:ExpandedRowCount=”2” 删除掉: 往下会看到列标题: 下面就是数据,将数据Row删除并替换成 {0}: 主要代码: 1 prot

DataGridView绑定DataTable动态生成列 并且将列名中文显示

方法一: DataGridView绑定获取到的DataTable数据,然后根据每一列手动设置列名,如图 方法二: 在写SQL查询语句的时候,直接在select后边的字段上 AS 想要显示的中文名称即可;如图

DataGridView和DataTable的使用

我们在实际编程中,经常会用到DataGridView来显示数据,而且可以通过过滤的方式查找需要的数据.这篇文章主要是讲显示数据的,然后通过过滤的方式查看你想要的内容.我的思路是设置字段来初始化DataTable,并且将DataTable的DefaultView绑定到DataGridView,将数据赋值到DataTable,在文本框输入内容,使用DataTable的RowFilter进行过滤数据,查找您需要的数据.我写这篇文章主要就是想分享我自己的使用datatable的困惑而已.我的使用很简单,

DataGridView绑定DataTable的正确姿势

1. 将DataTable 绑定到BindingSource 2. 将BindingSource绑定到DataGridView 3. DataGridView修改完要从Datatable取值时,同步过去时,BindingSource和DataGridView两个都要执行EndEdit() 例程: public partial class Form1 : Form { DataTable mTable = new DataTable(); BindingSource mbs = new Bindi

.Net常用技巧_将DataGridView的内容转换成DataTable

using System; using System.Collections.Generic; using System.ComponentModel; using System.Data; using System.Drawing; using System.Text; using System.Windows.Forms; using System.Data.SqlClient; using Utility; namespace MyTool { public class GetDgvToT

将dataGridView数据转成DataTable

如已绑定过数据源: DataTable dt = (dataGridView1.DataSource as DataTable) 如未绑定过数据源: public DataTable GetDgvToTable(DataGridView dgv) { DataTable dt = new DataTable(); // 列强制转换 for (int count = 0; count < dgv.Columns.Count; count++) { DataColumn dc = new DataC