比如有个控件id是CB_a, 如下代码为何出错,比如有多个控件,需要用循环通过变量赋值。怎么解决?            string tmp = "";
            tmp = "CB_" + "a";
            this.tmp.Checked = true;//此处报错

解决方案 »

  1.   

    tmp是string类型自然没有checke属性…你直接写CB_a.Checked=true不就行了?
      

  2.   

    你那是 字符串,字符串有 .Checked 的属性?你要转换成控件在点属性才行
      

  3.   

    ...
    tem 是字符串类型的,没有checked属性
    通过循环给控件赋值:
    在容器类控件里都会有controls这个属性。可以返回容器中的控件集合
    哥们,先看看基础吧
      

  4.   

    多个控件的话可以循环本页面或者本窗体的控件,然后判断如果为CheckBox类型,则转换为CheckBox然后为其checked属性赋值…
      

  5.   

    你那个this.tmp指的是那个string 类型的变量啊
      

  6.   

    http://topic.csdn.net/u/20070613/15/5a9e3dbe-e997-4109-89b8-f3debddab46d.html
      

  7.   

    string tmp = "";
                tmp = "CB_" + "a";
    //            this.tmp.Checked = true;//此处报错
    CheckBoxcb = this.Controls[tmp] as CheckBox;
    if(cb !=null) 
    {
        cb.Checked =true;
    }