CheckBox[] Checkbox = new CheckBox[5];
        for (int i = 1; i <= Checkbox.Length; i++)
        {
            Checkbox[i] = new CheckBox(); 
            if (Checkbox[i].Checked==true)    默认是true但是Checkbox[i].Checked一直等于false
            {
                想获得被选中的Checkbox的值;
            }
        }
求高手指点

解决方案 »

  1.   


    在你的你的代码
    Checkbox[i] = new CheckBox(); 
    后面加一句
    Checkbox[i].Checked =true才可以是true,没有见到你代码哪里有赋初值的地方啊
      

  2.   

    啊 我是在添加控件的时候设置为TRUE的
      <asp:CheckBox ID="Checkbox1"  runat="server" Checked=true/>
      

  3.   


    Checkbox[i] = new CheckBox(); 
      if (Checkbox[i].Checked==true) 默认是true但是Checkbox[i].Checked一直等于false
      {
      想获得被选中的Checkbox的值;
      }
      }
    你构造Checkbox[i] 构造后立马判断Checked==true,中间没有见你赋值,你所在的页面
    <asp:CheckBox ID="Checkbox1" runat="server" Checked=true/>
    这两个控件不是同一个控件!
    你仔细琢磨下.....
      

  4.   

    Checkbox[i] = new CheckBox();  这个与你页面上的.
    <asp:CheckBox ID="Checkbox1" runat="server" Checked=true/>一点关系都没有,看你的意思是不是这样?
    for (int i = 1; i <= Checkbox.Length; i++)
      {
      Checkbox[i] = (CheckBox)父容器.FindControls("Checkbox"+i.ToString());
     ............  
      }
      

  5.   

    Checkbox[i] = new CheckBox();  
      if (Checkbox[i].Checked==true) 默认是true但是Checkbox[i].Checked一直等于false
      {
      想获得被选中的Checkbox的值;
      }
      }你构造Checkbox[i] 构造后立马判断Checked==true,中间没有见你赋值,你所在的页面
    <asp:CheckBox ID="Checkbox1" runat="server" Checked=true/>
    这两个控件不是同一个控件!
    想一下 你的初始值
      

  6.   


    <asp:CheckBox ID="Checkbox1" runat="server" Checked=true/>
    这个是Checkbox1Checkbox[i]这个是数组中的第一个?那应该如何修改下。。糊涂了
      

  7.   

    说明下
    Checkbox[1]不等同于于Checkbox1,你两个控件构造周期都不一样你可以这样得到Checkbox[1] = (CheckBox)父容器.FindControls("Checkbox"+convert.tostring(1));
    不能Checkbox[i] = new CheckBox();,这样相当于你重新新建一个CheckBox了