c# - 将标签文本显示为警告消息并在几秒钟后隐藏?

标签 c# .net winforms

我有一些按钮可以验证用户是否是管理员。如果当前登录的用户不是管理员,则标签将显示为警告消息,然后在几秒钟后隐藏。我尝试在警告消息之后使用 lblWarning.Hide();lblWarning.Dispose();,但问题是,它甚至在显示警告消息之前就隐藏了消息.这是我的代码。

private void button6_Click(object sender, EventArgs e)
{
    if (txtLog.Text=="administrator")
    {
        Dialog();
    }

    else
    {
       lblWarning.Text = "This action is for administrator only.";
       lblWarning.Hide();
    }

}

最佳答案

你会想要用 Timer 来“隐藏”它。你可能会实现这样的东西:

var t = new Timer();
t.Interval = 3000; // it will Tick in 3 seconds
t.Tick += (s, e) =>
{
    lblWarning.Hide();
    t.Stop();
};
t.Start();

而不是这个:

lblWarning.Hide();

因此,如果您希望它显示超过 3 秒,那么只需将您想要的时间乘以 1000,因为 Interval 以毫秒为单位。

关于c# - 将标签文本显示为警告消息并在几秒钟后隐藏?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15951689/

相关文章:

c# - 防止 Windows Phone 上的自动锁定

c# - Web 服务调用中的 "Impersonating" session

.net - LINQ 表达式 TreeMap 灵完整吗?

c# - LINQ to 实体查询,在使用导航属性之前检查 null

c# - 如何移动到 Web 浏览器组件中的某个位置?

ReadKey等待输入两次后的C# Console.ReadLine

c# - MemoryCache.Set 返回删除的缓存项

winforms - 需要 dpiAware 可执行文件才能在 Windows XP/2003 中工作

c# - Winforms Dock 填补空白

c# - 实现 IValidatableObject 时 ValidationContext 的目的是什么