c# - 如何每秒更改表单元素的值?

标签 c# winforms windows-forms-designer

我有一个扩展 ProgressBar 的类,它应该释放一个简单的计时器。

    public partial class TimerBar: ProgressBar
    {
        public TimerBar()
        {
            InitializeComponent();
            Value = 100; 
        }
        ...
        public void Start()
        {
            int x = 100/Timer; // procent per second

            for (i = Value; i > 0; i--) {
               Value -= x;
            }
        }
     }

如何在 Value -= x 之前设置延迟 1 秒? (它不应该停止其他元素)

最佳答案

你可以使用windorms Timer类引发一个事件,每秒从你的类中调用一个方法。这不会阻塞线程。您将不得不稍微重写您的逻辑并且不使用 for 循环,但它应该能够提供您所需要的。

关于c# - 如何每秒更改表单元素的值?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32742609/

相关文章:

c# - WinForm 类作为类而不是设计模式打开

c# - 将具有多个 froms 的 linq 查询表达式转换为扩展方法语法

c# - 检测月历中更改的月份 C#

c# - ASP.NET jQuery Ajax 调用代码隐藏方法

c# - 添加每个项目后如何更新 ListView?

C++ 使用 DrawText 重绘

c# - 无法在设计器中加载文件或程序集 System.Componentmodel.Annotations 4.2.0.0

c# - 您可以更改 VS Win Forms 设计器代码生成吗?

c# - 定时器每周抛出一次方法 - C#、Asp.NET

c# - 按日期排列的列表,将 future 与过去日期分开