zoukankan      html  css  js  c++  java
  • *****C# 程序代码动态修改Label值(对Windows窗体控件进行线程安全调用)

    本文章來源:

    http://news.cnblogs.com/group/topic/44870/

    功能:在代码中动态修改Label的值

    步骤:

    新建一个窗口Form1,添加一个标签label1和两个按钮btn_one,btn_two

    然后添加btn_one和btn_two的Click事件,代码如下,都能动态修改label1的值

     //第一种方法实现
            private void btn_one_Click(object sender, EventArgs e) {
                Thread th = new Thread((ThreadStart)delegate() {
                    test();
                });
                th.Start();
            }
            private void test() {
                int i = 0;
                while (i <= 1000000) {
                    this.Invoke((MethodInvoker)delegate() {
                        label1.Text = i.ToString();
                    });
                    i += 100;
                }
            }
            //第二种方法实现
            private void btn_two_Click(object sender, EventArgs e) {
                Thread th = new Thread((ThreadStart)delegate() {
                    MyThread();
                });
                th.Start();
            }
            public delegate void myEventHandler(string userStatus);
            public void MyThread() {
                int i = 1;
                while (i <= 1000) {
                    if (label1.InvokeRequired) {
                        this.Invoke(new myEventHandler(ChangeLabelText), new object[] { i.ToString() });
                    }
                    else {
                        ChangeLabelText(i.ToString());
                    }
                    i++;
                }
            }
            public void ChangeLabelText(string value) {
                label1.Text = value;
            }

    由于本人刚学.net有很多需要学习的地方,这是我花费了两天时间才搞出来的,如果有错误之处或者更好的方法,请大家留言,这段代码只是我现在写的 WCF通过流上传和下载文件要实现的一个功能,即实时更新上传下载进度及速度标签,通过流上传和下载文件还没有整理好,整理好了会传上来,与大家一起学习 进步。

  • 相关阅读:
    2017-12-25
    oracle 创建表,增加修改删除字段
    jqxWidgets 常用代码
    Oracle初始化用户-表空间-权限
    Oracle 切换数据库实例
    ORE(Oracle R Enterprise)安装步骤
    Java 枚举类的基本使用
    Java可变参数
    java的封箱和拆箱
    spring 九种设计模式
  • 原文地址:https://www.cnblogs.com/luoyaoquan/p/2120811.html
Copyright © 2011-2022 走看看