当前位置 : 主页 > 编程语言 > c语言 >

c# – 获取中继器的项目

来源:互联网 收集:自由互联 发布时间:2021-06-25
我试图在页面移动(分页)之前获取所有转发器选中的转发器项目的复选框,并将它们存储在某个地方. foreach (RepeaterItem ri in rpt.Items) { CheckBox box = (CheckBox)ri.FindControl("chkBox"); if (box.Checked)
我试图在页面移动(分页)之前获取所有转发器选中的转发器项目的复选框,并将它们存储在某个地方.

foreach (RepeaterItem ri in rpt.Items)
  {        
      CheckBox box = (CheckBox)ri.FindControl("chkBox");
       if (box.Checked)
       {
          ...
       }
  }

问题是我从哪里调用此函数?
我试图从ObjectDataSource1_Selected(我使用objectdatasource填充转发器)和ObjectDataSource1_Selecting调用它,但rpt.Items.Count也是0.

rpt_PreRender()事件,返回正确数量的项目,但它在选中复选框之前发生,而不是之后.

我能做什么?

您正在寻找的方式是不可能的…请尝试使用此代码…

if (Repeater1.Items.Count > 0)
    {
        for (int count = 0; count < Repeater1.Items.Count; count++)
        {
            CheckBox chk = (CheckBox)Repeater1.Items[count].FindControl("CheckBox1");
            if (chk.Checked)
            {

            }
        }
    }
网友评论