我正在尝试进行预定的操作,让我们说通过网络服务电话检查用户的信用额度并更新用户界面。
我已经尝试使用quartz.net来实现调度bit.i在我需要更新的窗口类中创建了一个内部类。这个内部类有调用webservice的方法,结果需要显示回来用户界面。 这是我所做的一个例子。
public partial class Window2 : Window
{
private int i;
public Window2()
{
InitializeComponent();
}
public class Myclass :IJob
{
public void Execute(JobExecutionContext context)
{
string result = doMyOperation();
//i'll like to call parent label member of name lblNotif
//is something like parent.lblNotif.Content = result;
//possible?
}
public string doMyOperation()
{
//calling the wermethod to retreive user's balance
return result = service.GetUsersBalace(user);
}
}
}
石英钻头正在工作,这个帖子不是关于石英的。这是我的问题
问题1 :如何访问Window2控件,对于instace lable lblNotif?
问题2 :如果我对此的看法是错误的,那么解决我的问题的最佳做法是什么,应用程序需要执行操作,每5mn说一次并更新UI。登记/>
问题3 :我起初尝试使用背景工作者,我觉得我不能用它做调度位。这是正确的还是我错了。
感谢那些已经发表评论的人,感谢那些没有理解我帖子意义的人。我希望这会更清楚。谢谢阅读
答案 0 :(得分:1)
您可以为此目的使用方便的类BackgroundWorker。有关详细信息,请参阅this article
答案 1 :(得分:0)
要在单独的线程上定期执行操作,请使用System.Timers.Timer。它的Elapsed事件总是在一个新线程上运行。