我的应用程序需要一些启动,因为用户界面非常繁重。我想在用户双击快捷方式时显示Cursors.AppWaiting游标。所以我将Cursor.Current = Cursors.AppStarting;
弹出到主窗体的构造函数中。但是,当我启动应用程序时,光标不会更改,直到加载窗体后。
用户双击快捷方式后,有没有办法立即更改光标?
答案 0 :(得分:4)
好吧,您可以使用Background Worker和UseWaitCursor属性来更改光标。
var bw = new BackgroundWorker();
UseWaitCursor = true;
bw.DoWork += (s, e) =>
{
//do work..
};
bw.RunWorkerCompleted += (s, e) =>
{
Invoke((Action)(() => UseWaitCursor = false));
};
bw.RunWorkerAsync();
答案 1 :(得分:3)
尝试添加
Application.DoEvents();
更改光标后。
答案 2 :(得分:-1)
只需折叠您的MainGrid,直到加载该应用
<Window.Resources>
<BooleanToVisibilityConverter x:Key="BooleanToVisibilityConverter"/>
</Window.Resources>
Visibility="{Binding Path=IsLoaded, Converter={StaticResource BooleanToVisibilityConverter}, RelativeSource={RelativeSource AncestorType={x:Type Window}}}"