CheckBoxList是比较常用的一个服务器控件,由于他是多个checkbox的集合,对选项可以实现多选功能,所以后台获取选中的值以及设置默认选中值的话就需要用到遍历。下面是实际操作例子:

///        /// 初始化CheckBoxList中哪些是选中了的       

///        /// CheckBoxList        /// 选中了的值串例如:“0,1,1,2,1”        /// 值串中使用的分割符例如"0,1,1,2,1"中的逗号         public static string SetChecked(CheckBoxList checkList,string selval,string separator)         {             selval = separator + selval + separator;        //例如:“0,1,1,2,1”->",0,1,1,2,1,"             for(int i=0; i<checkList.Items.Count; i++)             {                 checkList.Items[i].Selected = false;                 string val = separator + checkList.Items[i].Value + separator;                 if(selval.IndexOf(val)!=-1)                 {                     checkList.Items[i].Selected = true;                     selval = selval.Replace(val,separator);        //然后从原来的值串中删除已经选中了的                     if(selval == separator)        //selval的最后一项也被选中的话,此时经过Replace后,只会剩下一个分隔符                     {                                 selval += separator;        //添加一个分隔符                     }                 }             }             selval = selval.Substring(1,selval.Length-2);        //除去前后加的分割符号             return selval;         }        ///         /// 得到CheckBoxList中选中了的值         ///         /// CheckBoxList         /// 分割符号         ///         public static string GetChecked(CheckBoxList checkList, string separator)         {             string selval = “”;             for(int i=0;i<checkList.Items.Count;i++)             {                 if(checkList.Items[i].Selected)                 {                     selval += checkList.Items[i].Value + separator;                 }             }             return selval;         }

有不明的同学可以随时提问