怎么让数据库里的数据一直更新,然后显示在UI上

mznxbc123456 2014-03-08 09:50:37
现在想写一个demo,如图是我的数据库,现在我想让我数据库里的value值不断的随机变化,然后显示到对应的UI上,我UI上是通过一个button来触发的,
private void btnGo_Click(object sender, EventArgs e)
{
foreach (string item in comboBox1.Items)
{
if (db.searchData(item))
{
if (item.StartsWith("Label"))
{
(this.panel1.Controls[item] as Label).Text = Convert.ToString(db.GetDbData(item));
}
else if (item.StartsWith("Meter"))
{
(this.panel1.Controls[item] as Meter).ChangeValue = Convert.ToDouble(db.GetDbData(item));
}
else if (item.StartsWith("Thermometer"))
{
(this.panel1.Controls[item] as Thermometer).CurValue = Convert.ToInt32(db.GetDbData(item));
}
else
{
MessageBox.Show("Form1 btnGo_Click there is no Controls");
}
}
}
}

GetDbData是获取数据库中数据的接口,我希望一点这个button就能不停的从数据库里获取数据,数据也在数据库中不断刷新,显示在UI上的数据和数据库同步。我是不是要开辟一个线程去处理啊~大虾们能不能帮忙下~谢谢了
...全文
644 17 打赏 收藏 转发到动态 举报
写回复
用AI写文章
17 条回复
切换为时间正序
请发表友善的回复…
发表回复
ruf 2014-03-10
  • 打赏
  • 举报
回复
数据库有这么玩得吗?
KING_314 2014-03-10
  • 打赏
  • 举报
回复
定时器刷新
浓汤拉面 2014-03-08
  • 打赏
  • 举报
回复
来这里学习学习
sunylf 2014-03-08
  • 打赏
  • 举报
回复
好東西..學習.
  • 打赏
  • 举报
回复
Service Blocker --> Service Brocker 另外,对于真正进行c/s程序设计的人,通常都会设计一个server。而不是只会使用关系数据库的客户端驱动去读写数据库。换句话说,所谓c/s架构是指“客户端-应用服务器-数据库服务器”架构,你需要自己开发一个应用服务器系统。 这个时候,你就根本无需关心监听关系数据库更改的事件问题了,你自己的应用服务器程序中来处理业务消息更改处理。当你的服务器收到某一个客户端的业务请求时,就会自动给另一个“管理客户端”推送一个消息。这是自己编程的。
by_封爱 版主 2014-03-08
  • 打赏
  • 举报
回复
mznxbc123456 2014-03-08
  • 打赏
  • 举报
回复
引用 6 楼 sp1234 的回复:
[quote=引用 3 楼 mznxbc123456 的回复:] [quote=引用 2 楼 liuchaolin 的回复:] 只能定时从数据库中重新获取数据
不能实时获取数据嘛? 应该可以的吧 哪怕一秒一次啊 [/quote] 如果你使用SQL Server,那么你需要学习使用SqlDependency类。[/quote] 嗯嗯 我去看看
  • 打赏
  • 举报
回复
在比较专业的程序中,“轮询”通常是很垃圾、遭到鄙视的做法。通常只有实习生或者那些只会做asp.net页面的人才会使用。 当数据修改了的时候,SQL Server会使用Service Blocker主动推送消息,用事件来通知你的.net程序。而不需要你去轮询。
  • 打赏
  • 举报
回复
引用 3 楼 mznxbc123456 的回复:
[quote=引用 2 楼 liuchaolin 的回复:] 只能定时从数据库中重新获取数据
不能实时获取数据嘛? 应该可以的吧 哪怕一秒一次啊 [/quote] 如果你使用SQL Server,那么你需要学习使用SqlDependency类。
jdcj413 2014-03-08
  • 打赏
  • 举报
回复
弄个timer
jdcj413 2014-03-08
  • 打赏
  • 举报
回复
一秒也是定时啊
mznxbc123456 2014-03-08
  • 打赏
  • 举报
回复
引用 2 楼 liuchaolin 的回复:
只能定时从数据库中重新获取数据
不能实时获取数据嘛? 应该可以的吧 哪怕一秒一次啊
md5e 2014-03-08
  • 打赏
  • 举报
回复
只能定时从数据库中重新获取数据
mznxbc123456 2014-03-08
  • 打赏
  • 举报
回复

这是数据库里的数据
ysd_xwl 2014-03-08
  • 打赏
  • 举报
回复
通过事件来监听就可以啊

110,524

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术 C#
社区管理员
  • C#
  • Web++
  • by_封爱
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

让您成为最强悍的C#开发者

试试用AI创作助手写篇文章吧