1

我正在用 C# 开发一个 WPF 应用程序,我想知道是否有任何方法可以测试所有鼠标光标类型。为了更改光标的类型,我这样做:

Mouse.OverrideCursor = Cursors.Cross;

我建立了一个像下面这样的计时器:

 DispatcherTimer dt = new DispatcherTimer();
 dt.Interval = new TimeSpan(0, 0, 0, 0, 300);
 dt.Tick += new EventHandler(dt_Tick);
 dt.Start();

这是我的问题:

Cursor c = Cursors.AppStarting;
void dt_Tick(object sender, EventArgs e)
{
   Mouse.OverrideCursor = c++; //this doesn't work. 
} 

我怎样才能做到这一点?

4

1 回答 1

3

尝试以下操作:

int current = 0;
PropertyInfo[] cursors;
void dt_Tick(object sender, EventArgs e) {
    if(cursors == null)
        cursors = typeof(Cursors).GetProperties();
    Mouse.OverrideCursor = 
        (Cursor)cursors[(current++) % cursors.Length].GetValue(null, 
                                                               new object[] { });
}
于 2012-07-23T14:05:27.833 回答