使用datagriview c#访问数据库更新(复选框问题) [英] Access Database update using datagriview c#(checkbox problem)

查看:81
本文介绍了使用datagriview c#访问数据库更新(复选框问题)的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我有thiw网格视图,其中我从数据库3列加载。看起来像这样

 ID |服务器|状态
1 | Tm2323 | 已检查
2 | Tm2356 | 未选中
3 | Xg2355 | 已检查
4 | Hgd345 | 已检查





所以我想取消选中或检查gridview第三列中的服务器,之后当我点击我的应用程序中的提交按钮时,数据库将更新,gridview将刷新以显示新结果。

谁能指导我?因为我已尽力而为,但我无法做到这一点。我没有想法。

解决方案

在(单元格结束编辑)被触发时使用save方法


< pre lang =c#> string SQLString;

SQLString = @ SELECT tblServers.ID,tblServers.ServerName,tblServers.Status
FROM(tblServers)
;

OleDbCommand SQLQuery = new OleDbCommand();
DataTable data = null ;
dataGridViewJidoka.DataSource = null ;
SQLQuery.Connection = null ;
OleDbDataAdapter dataAdapter = null ;
dataGridViewJidoka.Columns.Clear(); // < - clear columns
// ---------------------------------
SQLQuery.CommandText = SQLString;
SQLQuery.Connection = database;
data = new DataTable();
dataAdapter = new OleDbDataAdapter(SQLQuery);
dataAdapter.Fill(data);
dataGridViewServers.DataSource = data;
dataGridViewServers.AllowUserToAddRows = false ; // 删除空行
dataGridViewServers.ReadOnly = true ;
dataGridViewServers.Columns [ 0 ]。可见= ;
dataGridViewServers.Columns [ 1 ]。宽度= 140 ;
dataGridViewServers.Columns [ 2 ]。宽度= 53 ;





为了能够检查/取消选中从数据库导入数据库视图的复选框列,你有修改带下划线的代码行,如下所示:



 dataGridViewServers.ReadOnly =  false < /跨度>; 

。现在它可以正常工作。


I have thiw grid view in which i load from the database 3 columns. Looks like this

ID|  Server| Status
 1|  Tm2323|  checked
 2|  Tm2356|  unchecked
 3|  Xg2355|  checked
 4|  Hgd345|  checked



So i want to do this uncheck or check a server in the third column of the gridview, and after thath when i click a submit button that i have in my app the, database to get updated and the gridview to refresh showing the new results.
Can anyone guide me? because i've tried everything i could but i just can't make this work. I'm out of ideas.

解决方案

use the save method when the (cell end edit) has been fired


string SQLString;

SQLString = @"SELECT        tblServers.ID, tblServers.ServerName, tblServers.Status
              FROM            (tblServers)";

OleDbCommand SQLQuery = new OleDbCommand();
DataTable data = null;
dataGridViewJidoka.DataSource = null;
SQLQuery.Connection = null;
OleDbDataAdapter dataAdapter = null;
dataGridViewJidoka.Columns.Clear(); // <-- clear columns
//---------------------------------
SQLQuery.CommandText = SQLString;
SQLQuery.Connection = database;
data = new DataTable();
dataAdapter = new OleDbDataAdapter(SQLQuery);
dataAdapter.Fill(data);
dataGridViewServers.DataSource = data;
dataGridViewServers.AllowUserToAddRows = false; // remove the null line
dataGridViewServers.ReadOnly = true;
dataGridViewServers.Columns[0].Visible = false;
dataGridViewServers.Columns[1].Width = 140;
dataGridViewServers.Columns[2].Width = 53;



In order to be able to check/uncheck a checkbox column imported from the data base into a datagridview, youu have to modify the underlined line of code like this:

dataGridViewServers.ReadOnly = false;

. now it will work just fine.


这篇关于使用datagriview c#访问数据库更新(复选框问题)的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆