C#中的实时数据值显示

时间:2011-05-13 20:48:38

标签: c# data-binding

  

可能重复:
  Real time data value display in C#

简单的C#问题:我试图设计一个使用a的简单C#DLL 用于从数码相机中流式传输图像的第三方库。

这里真的是初学C#程序员,所以请耐心等待这个问题:)

我在代码中添加了一个计数器,以便每当检索到图像时 计数器递增。

我使用启动和停止按钮构建了一个没有意义且简单的GUI 确保一切正常,因为我们有 过去相机会停止流式传输的一些问题 突然,所以我想监视这个计时器计数器,以确保 它在不断增加。

有什么明智的方法来实现这一目标的实时显示 定时器值?该值只是一个UInt32,是对象的一部分 从DLL开始。

我实际实施的是草率: 我有一个按钮,会弹出一个显示计时器的消息框 按下时的值,以便检查一切是否仍在工作,我 将按此按钮两次以确保值已增加 一些。

这样做的正确方法是什么?数据绑定?什么会是什么 你这么简单吗?我只想要一个标签/文本框/任何东西 这会不断刷新我的柜台数据成员的价值。

谢谢!

2 个答案:

答案 0 :(得分:0)

每次计数器递增时只需更新标签或文本框。然后就会“活着”。

    private int _counter = 0;
    public int counter
    {
       get { return _counter; }
       set { _counter = value; UpdateLabel(); }
    }

private void UpdateLabel()
{
   label1.Text = "Counter is: " + counter + " Last updated: " + DateTime.Now.ToShortTimeStrong();
}

如果图书馆有任何活动,请订阅这些活动以提醒您发生了什么事。

答案 1 :(得分:0)

这样做的正确方法是建立一个轮询机制;在您的表单上,甚至在您的包装器对象中,设置一个计时器,每100毫秒(1/10秒)触发一次“滴答”或“已过去”事件。将处理程序附加到将从本机代码读取变量的事件,并使用该值更新标签或文本框。