c# - 如何在 C# 中创建一个填充两个 DataGridView 的函数
问题描述
我正在创建一个小型数据库应用程序,我必须在其中使用流动函数填充名为“DG1”和“DG2”的两个 DataGridView:
private SQLiteDataAdapter DB;
private DataSet DS = new DataSet();
private DataTable DT = new DataTable();
public void LoadData(DataGridView Grid, String fields, String table)
{
SetConnection();
sql_con.Open();
sql_cmd = sql_con.CreateCommand();
string CommandText = "select " + fields + " from " + table;
DB = new SQLiteDataAdapter(CommandText, sql_con);
DS.Reset();
DB.Fill(DS);
DT = DS.Tables[0];
Grid.DataSource = DT;
sql_con.Close();
}
在主窗体中调用它之后
LoadData(DG1, "*", "CLIENTS");
第一个网格会填满,但是当我调用第二种方法时
LoadData(DG2, "*", "COURSES");
第一个客户端 DataGridView 为空,第二个 DataGridView 填充了正确的信息
解决方案
我犯了多么愚蠢的错误!我所要做的就是删除 DataSet 和 DataTable 的声明并将其放在函数中,所有冲突都消失了,谢谢(@JohnG,@TaW 以及每个试图提供帮助的成员)
public void LoadData(DataGridView Grid, String fields)
{
SetConnection();
sql_con.Open();
sql_cmd = sql_con.CreateCommand();
string CommandText = "select " + fields + " from " + table;
DB = new SQLiteDataAdapter(CommandText, sql_con);
DataSet DS = new DataSet();
DataTable DT = new DataTable();
DB.Fill(DS);
DT = DS.Tables[0];
Grid.DataSource = DT;
sql_con.Close();
}
推荐阅读
- java - 将数据从java中的csv导入到snappy数据时出错
- sql - 从主键获取外键 ID
- firebase - 无法读取 Ionic 中未定义错误的属性“清单”
- php - PHP:限制对最终页面的访问
- python - PyQt5内嵌matplotlib-plot,改变x-ticks等属性
- vba - Excel删除循环范围中的空行
- solr - Sustes in Solr running and using lots of CPU power
- javascript - 是否有向群组的所有成员发送私人消息的命令?
- java - 插件 [id: 'org.springframework.boot', version: '2.0.2.RELEASE'] 未找到
- javascript - Dynamo db类型转换错误ValidationException:提供的值不能转换成数字