我想实现一个功能.每行显示一个成员的属性.然后在每行前面显示一个checkbox.可供选择.
请问这每行前面的一个checkbox可以做成checkboxlist吗?
类似于邮箱页每个checkbox.选中后可以提交删除该邮件.就我目前的能力知.checkboxlist只能自己画表的.而不能在表的每一行增加其他的列.

解决方案 »

  1.   

    <asp:CheckBoxList ID="ckb"   runat="server" RepeatDirection="Horizontal" RepeatColumns="1">
     </asp:CheckBoxList>
    或用gridview在模板列添加checkbox
      

  2.   

    使用数据控件的模板列,里面添加checkbox控件,比你用CheckBoxList方便
      

  3.   

    RepeatColumns="1"
      

  4.   

    RepeatColumns="1" 不行的啊.我的表本身有好多列啊.
      

  5.   

    谢谢各位的指点.我还是没有明白大家的意思.也不知道该怎么用.现在详细说明我的用法.
    有一个学生表:有字段.ID,姓名,年龄,性别共四个字段.
    我现在想画一个表.显示checkbox,姓名,年龄,性别;
    表中显示数据库中所有的人.当checkbox选中某一行或者多行时,然后提交,就可以删除被选中的那些人.
    这个用checkboxlist的RepeatColumns="1" 无法完成.因为这样就无法显示另外三个字段.gridview也不行.因为gridview的checkbox需要有一个bool对应,然后显示而已.repeater不知道怎么用.能达到我的要求吗?高手指点啊.最好能给个例子看看.
      

  6.   


            <asp:Repeater ID="Repeater1" runat="server">
                <HeaderTemplate>
                    <table>
                </HeaderTemplate>
                <ItemTemplate>
                    <tr>
                        <td><asp:CheckBox ID="CheckBox1" runat="server" ToolTip='<%# Eval("ID") %>' /></td>
                        <td><%# Eval("姓名")%></td>
                        <td><%# Eval("年龄")%></td>
                        <td><%# Eval("性别")%></td>
                    </tr>
                </ItemTemplate>
                <FooterTemplate>
                    </table>
                </FooterTemplate>
            </asp:Repeater>
      

  7.   

    用repeater或其他的数据控件很好实现的你查查吧,网上很多例子
      

  8.   

    提交之后,服务端怎么获取是否check了呢?>
      

  9.   


            foreach (RepeaterItem iten in Repeater1.Items)
            {
                CheckBox cb = iten.FindControl("CheckBox1") as CheckBox;
                if (cb.Checked)
                {
                    //这里写其他代码
                }
            }
      

  10.   

    Repeater rp = (Repeater)Master.FindControl("ContentPlaceHolder1").FindControl("Repeater1");
                for (int i = 0; i < rp.Items.Count; i++)
                {
                    CheckBox ckb = (CheckBox)rp.Items[i].FindControl("CheckBox2");
                    if (ckb.Checked)
                    {
                        DateTime dt = DateTime.Now;
                        int _id = int.Parse(((Label)rp.Items[i].FindControl("lblID")).Text);
                     }
                }
    可以加一列隐藏列或者用Label来存放ID的值,根据ID就能得到数据。
      

  11.   


    看上面我写的aspx代码
    <asp:CheckBox ID="CheckBox1" runat="server" ToolTip='<%# Eval("ID") %>' />在cs代码里访问checkbox的tooltip属性就可以得到id了,比用隐藏列省点代码 -)        foreach (RepeaterItem iten in Repeater1.Items)
            {
                CheckBox cb = iten.FindControl("CheckBox1") as CheckBox;
                if (cb.Checked)
                {
                    int id = int.Parse(cb.ToolTip);
                }
            }