简单的C#问题:我试图设计一个使用a的简单C#DLL 用于从数码相机中流式传输图像的第三方库。
这里真的是初学C#程序员,所以请耐心等待这个问题:)
我在代码中添加了一个计数器,以便每当检索到图像时 计数器递增。
我使用启动和停止按钮构建了一个没有意义且简单的GUI 确保一切正常,因为我们有 过去相机会停止流式传输的一些问题 突然,所以我想监视这个计时器计数器,以确保 它在不断增加。
有什么明智的方法来实现这一目标的实时显示 定时器值?该值只是一个UInt32,是对象的一部分 从DLL开始。
我实际实施的是草率: 我有一个按钮,会弹出一个显示计时器的消息框 按下时的值,以便检查一切是否仍在工作,我 将按此按钮两次以确保值已增加 一些。
这样做的正确方法是什么?数据绑定?什么会是什么 你这么简单吗?我只想要一个标签/文本框/任何东西 这会不断刷新我的柜台数据成员的价值。
谢谢!
答案 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秒)触发一次“滴答”或“已过去”事件。将处理程序附加到将从本机代码读取变量的事件,并使用该值更新标签或文本框。