数秒待ってラベル値を消去するメソッドを書いています。ただし、ユーザーがラベルにマウスを置いている場合は、クリーニングできません。
コード:
public static void CleanIn(this Label label, int miliseconds)
{
Timer timer = new Timer();
timer.Interval = miliseconds;
timer.Tick += (o, e) =>
{
if (!label.Focused)
{
label.ResetText();
timer.Stop();
timer.Dispose();
}
};
timer.Start();
}
問題は、マウスがラベル上にある場合、値が独立して消去されることです。これを修正する方法は?