我试图使文本框的颜色更改为绿色,然后作为确认方法淡化为白色。这是我迄今的代码:褪色与C循环中的颜色#
private void btnCommit_Click(object sender, EventArgs e)
{
//do stuff
Color c = new Color();
for (int i = 0; i <= 255; i++)
{
c = Color.FromArgb(i, 255, i);
textBox1.BackColor = c;
System.Threading.Thread.Sleep(10);
}
}
它不起作用。它似乎只是等待2.5秒才能做其他事情,但颜色始终保持白色。
btnClick在UI线程上执行,因此你看到冻结。您可以使用WPF动画代替或异步(如下面的anwer中所示),或者在后台任务中使用Dispatcher.BeginInvoke更新BackColor来运行此代码。 –
在哪个上下文中使用?你有没有考虑过使用CSS或LESS来完成这项任务? –