checkboxlist与数组结合用的技

今天看到一个checkboxlist与数组结合用的技巧。
    
    用户自定义控件.ascx页面有一个SqlDataSource数据源,还有一个Checkboxlist控件。下面来看看.cs里的关键代码了:
  public string SelectedValue
    {
        get
        {
            string s = "";
            for (int i = 0; i < CheckBoxList1.Items.Count; i++)
            {
                if (CheckBoxList1.Items[i].Selected)
                    s += CheckBoxList1.Items[i].Value + ",";
            }
            return s;
        }
        set
        {
            CheckBoxList1.DataBind();
            string s = value;
            string[] s_arr = s.Split(new char[] { ',' });//关键的部分哦
            for (int i = 0; i < CheckBoxList1.Items.Count; i++)
            {
                for (int j = 0; j < s_arr.Length - 1; j++)
                {
                    if (CheckBoxList1.Items[i].Value == s_arr[j])
                    {
                        CheckBoxList1.Items[i].Selected = true;
                        break;
                    }
                }
            }
        }
用的时候,把Checkboxlist里的东西转换成数组的时候的代码: 
string[] act_arr = acts.SelectedValue.Split(new char[] { ',' });
      呵呵,很优美的一段代码

你可能感兴趣的:(checkbox)