Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/csharp/295.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# Cursors.WaitCursor仅在Messagebox.Show可用时工作_C#_Compact Framework - Fatal编程技术网

C# Cursors.WaitCursor仅在Messagebox.Show可用时工作

C# Cursors.WaitCursor仅在Messagebox.Show可用时工作,c#,compact-framework,C#,Compact Framework,我在windows mobile设备上使用C#.NET compact framework v3.5,并使用vs2008进行开发 我最近遇到了一个奇怪的错误 这部分代码Cursor.Current=Cursors.WaitCursor不工作。i、 e等待光标未显示 但何时使用: Messagebox.Show(""); Cursor.Current = Cursors.WaitCursor; 我正在等待光标 是任何阻塞的Cursor.Current=Cursors.WaitCursor从显示?

我在windows mobile设备上使用C#.NET compact framework v3.5,并使用vs2008进行开发

我最近遇到了一个奇怪的错误

这部分代码
Cursor.Current=Cursors.WaitCursor不工作。i、 e等待光标未显示

但何时使用:

Messagebox.Show("");
Cursor.Current = Cursors.WaitCursor;
我正在等待光标


是任何阻塞的
Cursor.Current=Cursors.WaitCursor从显示???

它实际上取决于您拥有的其他代码。只有当UI线程能够处理窗口消息时,系统才会切换到等待光标。如果
Cursor.Current=…
后面的代码阻塞了UI线程,您将看不到任何更改

我不知道为什么一个
MessageBox.Show(“”)应该有帮助,但您可以尝试以下方法:

Cursor.Current = Cursors.WaitCursor;
Application.DoEvents();

这允许应用程序处理挂起的windows消息。因此,它还应该直观地切换到等待光标。

甚至没有应用程序。DoEvents();它不起作用。其他可能的情况是什么?我最近将我的compact框架从v2.0升级到了v3.5。这是否会导致任何问题?我实际上从未经历过这样的问题。只有在切换到wait cursor和back之间经过很短的一段时间后,您才不会看到光标发生变化。不,事实并非如此。因为我在下一行保留了断点并检查了它。