我正在尝试使用Microsoft.SqlServer.Management.Smo.Restore对象来还原SQL Server 2000数据库。就在我开始恢复操作之前,我更改了标签的文本,以便用户知道发生了什么。但是,直到fullRestore.Wait()行后面,GUI中才会显示已更改的文本(即文本保持不变)。Label.Text更改被阻止?
lblStatus.Text = "Restoring Database";
Restore fullRestore = new Restore();
// Configure fullRestore
fullRestore.SqlRestore(_server);
fullRestore.Wait();
奇怪的是,lblStatus最终不显示“还原数据库” 之后,但直到恢复完成。有任何想法吗?
调用lblStatus.Refresh()将没有任何区别,都认为确实是控制无效,因此会重新绘制,直到GUI线程可用时,实际的重绘仍然不可能发生。 – 2009-06-17 21:10:11