我一直在开发自定义ms-word应用程序的代码,并从Exchange服务器获取数据并显示它。所以,直到数据来到ms-word我想显示“忙”小时玻璃符号。但是执行从按钮处理程序中退出(几分之一秒)后,繁忙的符号就会丢失。
我在ms-word自定义功能区中有一个名为“Receive”的按钮,所以当我按下然后需要加载忙符号并且直到数据从交换到ms-word然后必须保留符号。 / p>
我使用以下代码: -
public class MyCursor : IDisposable
{
private Cursor _preappCursor;
public MyCursor ()
{
_preappCursor= Mouse.OverrideCursor;
Mouse.OverrideCursor = Cursors.Wait;
}
#region IDisposable Members
public void Dispose()
{
Mouse.OverrideCursor = _preappCursor;
}
#endregion
}
using(new MyCursor ())
{
//Receive side bar calls the exchange code here and display in ms-word
}
答案 0 :(得分:1)
你在GUI线程上进行长时间运行吗?如果是这样,GUI可能没有响应,这将导致UI故障。因此,请确保在后台线程上运行长时间运行的操作。
答案 1 :(得分:0)
使用后台工作程序从Exchange Server检索数据。封装BackgroundWorker_DoWork()中的功能。这次将光标更改为忙碌并保留。
后台工作程序完成其作业后,将光标更改回“_preappCursor”。在BackgroundWorker_RunWorkerCompleted()中封装此功能。
有关使用Wpf。
希望这会对你有所帮助。