【发布时间】:2010-05-01 09:09:36
【问题描述】:
场景:我有一个数据库表被某些服务频繁更新。
我有一个 c# Winforms 应用程序,它通过将数据表绑定为数据源将这个表加载到数据网格视图中,然后我想添加一个计时器,它每 10 秒更新一次数据表的内容,并使用数据库表中的最后一次更改。 ..
我不需要用数据表更改来更新数据库,但我需要用数据库表中的最后一次更改来更新数据表,这与通常情况相反......
有没有办法做到这一点?最好的方法是什么?
我已经尝试过使用此代码:
private void ServiceTimer_Tick(object state)
{
OdbcConnection oCon = new OdbcConnection();
oCon.ConnectionString = ConnectionStrings;
OdbcDataAdapter dp = new OdbcDataAdapter("SELECT * FROM table", oCon);
dsProva.Tables.Clear();
dp.Fill(dsProva,"table");
dataGridViewMessaggi.DataSource = dsProva.Tables["table"];
dataGridViewMessaggi.Refresh();
}
但是每次 Timer Tick 我都丢失了 DatagridView 和 Current Row 中的选择......
有没有更好的解决方案?
【问题讨论】:
标签: c#