1

我有一个复选框列表控件,我需要检查用户在屏幕上单击提交按钮时的值(C#)。此复选框列表是我在页面标记中引用的用户控件的一部分。但是,当我在提交按钮的代码中检查复选框列表的值时,所有值都消失了(即它表示复选框列表控件中根本没有任何项目)。任何人都知道为什么会发生这种情况?我在另一个地方的代码中用另一个复选框列表用户控件做同样的事情,它工作得很好。

我手头没有确切的代码,但下面是我正在做的简化版本。基本上,只有当它不是用户控件的回发时,我才会将数据绑定到 Checkboxlist。

USER CONTROL WHICH CONTAINS ONLY THE CHECKBOXLIST CONTROL Page_Load()
If(!IsPostBack)
{
   foreach(var item in myVals)
   {
      ListItem i = new ListItem();
      i.Text = item.Text;
      i.Value = item.Value;
      i.Selected = false;

      myCheckBoxListControl.Add(i);
   }
}

现在我有一个提交按钮功能,它检查复选框列表中的值...

SubmitButton_Click()
{
   foreach(ListItem item in myCheckBoxListControl.Items)
   {
      // process each one here. The code never gets in here as there are never any items in the checkboxlist
   }
}

任何人都知道为什么 CheckboxList 在提交按钮功能执行时丢失了所有项目?复选框列表的 EnableViewState 设置为 true。

4

0 回答 0