如何在应用启动时立即显示光标?

时间:2012-01-18 00:44:46

标签: c# winforms user-interface .net-4.0 cursor

我的应用程序需要一些启动,因为用户界面非常繁重。我想在用户双击快捷方式时显示Cursors.AppWaiting游标。所以我将Cursor.Current = Cursors.AppStarting;弹出到主窗体的构造函数中。但是,当我启动应用程序时,光标不会更改,直到加载窗体后。

用户双击快捷方式后,有没有办法立即更改光标?

3 个答案:

答案 0 :(得分:4)

好吧,您可以使用Background WorkerUseWaitCursor属性来更改光标。

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>

XAML ElementReference

 Visibility="{Binding Path=IsLoaded, Converter={StaticResource BooleanToVisibilityConverter}, RelativeSource={RelativeSource AncestorType={x:Type Window}}}"