作者热门文章
- android - RelativeLayout 背景可绘制重叠内容
- android - 如何链接 cpufeatures lib 以获取 native android 库?
- java - OnItemClickListener 不起作用,但 OnLongItemClickListener 在自定义 ListView 中起作用
- java - Android 文件转字符串
目前我正在学习MySQL,抱歉我的新手问题。这是我的问题
我有 2 个类,第一个是 Windows 窗体,另一个是我想要包含来自 SQL 的所有进程的类。这是我在 SQL 类中的代码
public void SampleQuery(string tablename)
{
DataTable dataTable;
string query = "SELECT * FROM " + tablename;
//Open connection
if (this.OpenConnection() == true)
{
adapter = new MySqlDataAdapter(query,connection);
dataTable = new DataTable();
adapter.Fill(dataTable);
//close Connection
this.CloseConnection();
return;
}
我想要做的是,使用 DataGridView 显示来自 SQL 的数据。是否可以在上面的 SQL 类中编写 datagridview 代码?还是必须在 Windows 窗体部分?
如果必须在windows窗体中,如何将现在包含所有数据的dataTable抛给Windows窗体类?
非常感谢你帮助我。如果我的问题听起来很荒谬,尽管问我。
最佳答案
您可以使用 DataGrid
DataSource
属性。
示例代码演示思路:
class MyForm : Form
{
public MyForm()
{
InitializeComponent();
DataAccess dataAccess = new DataAccess();
m_dataGrid.DataSource = DataAccess.SampleQuery("MyTable");
}
}
class DataAccess
{
public DataTable SampleQuery(string tablename)
{
DataTable dataTable;
//
// Your Code
// ..
return dataTable;
}
}
我认为 Form Load 事件处理程序是加载数据的好地方(不是构造函数;),如我上面所示)。您还可以实现一些缓存(如果表单打开时每次加载数据表效率不高:))
关于c# - 如何将 DataTable 从一个类传递到另一个类,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8193492/
我是一名优秀的程序员,十分优秀!