c# - 刷新DataGridView?

标签 c# mysql .net

我想在包含绑定(bind)到 MySQL 数据库的 DataGridView 对象的表单上提供“刷新”按钮。通过“新建”MySQLCommand、MySQLDataAdapter、MySqlCommandBuilder 和 DataSet 对象并重新运行查询并将绑定(bind)源重新加载到 DataGridView 对象,我获得了没有从具有计算字段的查询填充的列的屏幕。

对于那些具有计算列的人来说,这不起作用。

当然,必须有某种方法可以从数据库重新加载 DataGridView 对象。

我正在使用 SharpDevelop C# 5 和 .NET Framework 4.0、MySQL Community Server 5.3.33 和 MySQL Data Connector/.NET V 6.7.4

非常感谢任何线索!

<小时/>

杰西和布莱恩,

我正在做 WinForms - 很抱歉没有说清楚。我刚刚制定了一个解决方案。首先,仅执行初始加载中运行的内容是不够的。我发现必须“新建”MySqlCommand、MySQLDataAdapter、MySqlCommandBuilder 和 DataSet 对象,然后像表单加载一样运行数据获取。此外,在执行任何看起来或闻起来像“编辑”的操作时不能调用此函数,否则会引发异常。我希望表单在编辑后立即刷新,因此我在表单上放置了一个计时器,并在 RowValidated 事件结束时启用它,并让计时器调用 ReloadGrid 例程。另外,如果用户处于打开状态,例如第 822 行,我发现焦点转到了第 0 行和单元格 0,因此我将当前行和单元格保存到一个点,然后在数据刷新后将焦点设置回来。

最佳答案

private void BindGrid(){
//retrieve data

//bind
DataGridView.DataSource = dataSource;
DataGridView.DataBind();
}

//call BindGrid() anytime you need to refresh data, for example in a button event click handler

关于c# - 刷新DataGridView?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18262610/

相关文章:

c# - 将社会安全号码 (SSN) 格式化为 XXX-XX-XXXX 来自 XXXXXXXXX

c# - 如何按日期时间对字典进行分组并对 int 求和

c# - 带有客户端证书的 WCF 应用程序在一段时间后失败?

c# - System.Data.dll 上系统程序集的 .NET 反射失败

mysql - 查询mysql一天总工作时间的最佳方法

c# - 如何使用lucene搜索单词的一部分?

c# - 使用 sdkImages 未找到 WP 8

c# - XML 中缺少标记会阻止 XmlSerializer 创建属性

mysql - 如何从 SQL 中的表中选择唯一行?

mysql - 从 mysql 中的列中删除所有或特定的不可打印字符