如何将对DataGridView的操作写入数据库中

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了如何将对DataGridView的操作写入数据库中相关的知识,希望对你有一定的参考价值。

我用的是Microsoft Visual Studio 2005的C#,用DataGridView控件来显示与数据库相绑定的表的内容,在DataGridView控件中对数据的更改如何写刀数据库中?

参考技术A 如果绑定的datasource为datatable,采用以下方法实现.
代码实现:(数据库是Sqlserver的)
1 获取数据库的内容
private SqlDataAdapter m_Dda;
public SqlDataAdapter Dda

get

if (m_Dda == null)

m_Dda = new SqlDataAdapter("查询语句", "连接语句");

SqlCommandBuilder commb = new SqlCommandBuilder(m_Dda);
m_Dda.InsertCommand = commb.GetInsertCommand();
m_Dda.UpdateCommand = commb.GetUpdateCommand();
m_Dda.DeleteCommand = commb.GetDeleteCommand();


return m_Dda;



private DataTable m_Table;
public DataTable Table

get

if (m_Table == null)

m_Table = new DataTable();


return m_Table;



2 将内容绑定到控件
this.Dda.Fill(this.Table);
this.dataGridView1.DataSource = null;
this.dataGridView1.DataSource = this.Table;

3 利用适配器更新表
this.Dda.Update(this.Table);
参考技术B 如果你是想直接在DatagridView控件上更改,完了就想保存到数据库的话,要在CurrentCellDirtyStateChanged事件里面写你的修改方法,然后再调用你的绑定DataGridView方法

如果不是直接在DatagridView控件上更改,就需要一个新的页面来进行修改数据本回答被提问者采纳
参考技术C 写插入就好了啊 参考技术D 这个问题百度一下就有了

c#如何使用线程操作datagridview

我在做一个数据查询报表软件,想从数据库中取出数据,然后放入datagridview中。这个功能已经实现。我想做的是,利用线程来操作写入datagridview。
问题:当写入datagridview完毕后,貌似线程把该控件给卡住了,没有办法拖动它的滚动条,请问各位大侠如何解决?
希望给出一个示例,谢谢

参考技术A public delegate void Handler(FlexCell.Grid param1, int param2);

/// <summary>
/// 锁定行(供线程内部使用)
/// </summary>
/// <param name="cellGrid">需要锁定的Flex控件</param>
/// <param name="row">需要锁定的行</param>
public static void lockCell(FlexCell.Grid cellGrid, int row)

//EventHandler ehLockCell = new EventHandler(flexCell_Lock);
//ehLockCell(this, null);
if (cellGrid.InvokeRequired)

//Handler handlock = new Handler(lockCell);
cellGrid.Invoke(new Handler(lockCell), new object[] cellGrid, row );


else

lock (cellGrid)

//FlexCell.Grid cellBanlance = (FlexCell.Grid)tabBalance.TabPages["2008"].Controls[0];
cellGrid.Row(row).Locked = true;
cellGrid.Range(row, 2, row, cellGrid.Cols - 1).BackColor = AppHelper.MatchColorScheme(6);


本回答被提问者采纳
参考技术B 用delegate
创建一个thread,然后用invoke调用delegate对应的函数

以上是关于如何将对DataGridView的操作写入数据库中的主要内容,如果未能解决你的问题,请参考以下文章

请问VB.NET中datagridview表里的数据怎样写入到数据库中

(c# form) datagridview怎么写入数据库

在可编辑单元格中写入值时如何捕获 DataGridView 验证错误?

赢表格。使用 BindingNavigator 时如何使 DataGridView 写入单元格值

vb.net怎么将datagridview的数据写入数据库

急!在datagridview中修改或增加数据,单击按钮能将写入的数据保存到数据库里?求C#源代码,谢谢交个朋友