Этот пример в основном решает
Элементы управления списком, такие как CheckBoxList, не могут напрямую получить текущий элемент операции при возникновении события SelectedIndexChanged.
И какой тип операции выбран? Или снять галочку?
----------
Пример кода выглядит следующим образом:
1protected void Page_Load (отправитель объекта, EventArgs e)
2 {
3, если (!IsPostBack)
4 {
5 //Привязка операции CheckBoxList
6 this.hidtxt_CheckBoxSelectValue.Value = "";//При первом связывании CheckBoxList
7}
8}
9
10 protected void CheckBoxList1_SelectedIndexChanged (отправитель объекта, EventArgs e)
11 {
12 //hidtxt_CheckBoxSelectValue сохраняет значение последнего клика
13 //Если в прошлый раз это было Page_Load, то hidtxt_CheckBoxSelectValue пусто
14 строка sOld = this.hidtxt_CheckBoxSelectValue.Value.Trim();
15
16 для (int i = 0; i < CheckBoxList1.Items.Count; i++)
17 {
18 //Первая ситуация
19 //Он не был выбран изначально, но выбран в настоящее время.
20 //Тогда эта операция щелчка: выберите и щелкните этот элемент
21, если (CheckBoxList1.Items[i].Selected)
двадцать два {
23 if (!sOld.Contains(CheckBoxList1.Items[i].Value.Trim() + ","))
двадцать четыре {
25 //Выполняем соответствующую обработку
26 Response.Write("Это операция выбора, текстовое значение используемого флажка равно " + CheckBoxList1.Items[i].Text + "Значение значения равно " + CheckBoxList1.Items[i].Value);
27 я = CheckBoxList1.Items.Count;
28 }
29 }
еще 30
31 {
32 //Второй случай
33 //Изначально он был выбран, но в настоящее время не выбран.
34 //Операция щелчка на этот раз: снимите флажок и щелкните этот элемент.
35 if (sOld.Contains(CheckBoxList1.Items[i].Value.Trim() + ","))
36 {
37 //Выполняем соответствующую обработку
38 Response.Write("Это операция отмены выбора, текстовое значение используемого флажка равно " + CheckBoxList1.Items[i].Text + "Значение значения равно " + CheckBoxList1.Items[i].Value);
39 я = CheckBoxList1.Items.Count;
40}
41 }
42 }
43
44 //На этот раз сохраняем все выбранные значения
45 строка sNew = "";
46 foreach (элемент ListItem в CheckBoxList1.Items)
47 {
48 если (пункт.Выбран)
49 sNew += " " + item.Value.Trim() + ",";
50 }
51 this.hidtxt_CheckBoxSelectValue.Value = sNew;//Подготовка к следующему сравнению
52 }
http://www.cnblogs.com/freeliver54/archive/2007/01/11/617988.html