你好,我有以下问题。我需要像“锁定”这样的东西来让我的程序等待一个事件。我有一些基于事件的数据库访问。所以,如果我想从数据库的东西,做一些事情上我写:等待事件。如何不冻结gui
void getData()
{
...
...
getMyDataFromDbPlease();
}
void responseEvent(parameters...)
{
//Ok i have my data, now i do something on it
...
...
}
所以,如果我有大的逻辑,我必须把它分成两个部分。如果我想在一个alghoritm中获得5次数据,我必须将它分成6块。
所以,我想是这样的:
void getData()
{
...
...
getMyDataFromDbPlease();
//somehow wait for data here
getMyDataFromDbPlease();
...
...
}
但我想这种神奇的等待不是冻结我的GUI。我怎样才能达到目的?我在wpf上工作。
我认为应该在这里,如果你是从一个执行此这个类不是一个wpf组件,而你没有一个Dispatcher对象来操作。相反,你可以使用像这样的东西:'Application.Current.Dispatcher.Invoke(...'。 – Ben 2011-05-08 15:21:43