checkboxlist用法 checkboxlist实例

1、  关于checkboxlist  用法的说明:

Checkboxlist也算得上微软编程环境一个比较重要的控件。我也是刚从学校毕业的初级软件人员,在这里利用博客边学习边与大家一起分享。

废话不多说,进入正题。

1、用处(哪里需要使用):

一句话:用数据库中的数据创建一组复选框,则 CheckBoxList 控件是较好的选择(当然checkbox也是可以的)。

2、   CheckBoxList里的元素:

用法一、

在这里实现一个稍微复杂的用法。说明:设置三个复选框,小学、初中、高中、当用户选择时,系统判断用户的选择是什么

asp:CheckBoxList ID=" chkSchoolType " runat="server" RepeatLayout="Flow"

                           AutoPostBack="true" Enabled="false" RepeatDirection="Horizontal">

                            <asp:ListItem Value="00000100">小学</asp:ListItem>

                            <asp:ListItem Value="00000010">初中</asp:ListItem>

                            <asp:ListItem Value="00000001">高中</asp:ListItem>

                        </asp:CheckBoxList>

3、  判断哪个选择被选中:

  foreach (ListItem item in chkSchoolType.Items)

            {

                if (item.Selected)

                {

                    typeSelected = true;

                    break;

                 

                }

 

定义学校类型的方式(目的是为了最后提交到数据库里的):

  int SCHOOL_TYPE = 0;

            if (chkSchoolType.Items[0].Selected)

 SCHOOL_TYPE = SCHOOL_TYPE | Int32.Parse(chkSchoolType.Items[0].Value);

            if (chkSchoolType.Items[1].Selected)

 SCHOOL_TYPE = SCHOOL_TYPE | Int32.Parse(chkSchoolType.Items[1].Value);

 if(chkSchoolType.Items[2].Selected)

SCHOOL_TYPE = SCHOOL_TYPE | Int32.Parse(chkSchoolType.Items[2].Value);

(呵呵.在这里把大家不多用的“或”用起来,看到是否感觉到耳目一新啊?)

用法二、gridview等里实现的多项选中一起删除:(举例:girdview

girdview<column></column> 中间加上下列元素

 <asp:TemplateField HeaderText="选择">

       <HeaderTemplate>

          <asp:CheckBox runat="server" ID="chkAll" OnCheckedChanged="chk_CheckedChanged"  AutoPostBack="true" />

        </HeaderTemplate>

                <ItemTemplate>

                    <asp:CheckBox runat="server" ID="chk1" />

                 </ItemTemplate>

</asp:TemplateField>

 

前台代码:

   protected void DeleteMuti_Click(object sender, EventArgs e)

    {

        int errorRows = 0;

        int selectedRows = 0;

        int delRows = 0;

        foreach (GridViewRow row in GridView1.Rows)

        {

            CheckBox chk = (CheckBox)(row.FindControl("chk1"));

         

            if (chk.Checked)

            {

                selectedRows++;

                Label lbUserId = (Label)(row.FindControl("UID"));

                int userId = Int32.Parse(lbUserId.Text);

                int rows = DbHelper.DeleteRegTeacher(userId);

                if (rows != 1)

                {

                    errorRows++;

                }

                else

                {

                    delRows++;

                }

 

            }

        }

 

 

        if (errorRows > 0)

            lbResult.Text = "" + errorRows.ToString() + "个老师在删除时发生错误!";

        if (delRows > 0)

            lbResult.Text += "成功删除了" + delRows.ToString() + "个老师账号";

        if (selectedRows == 0)

            lbResult.Text = "没有选择要删除的学生帐号!";

 

        bindGrid();

posted on 2009-11-30 17:31  遥望大海,云卷云舒  阅读(2411)  评论(0编辑  收藏  举报