当前位置 : 主页 > 网络编程 > ASP >

获取ASP.Net 2.0 Repeater控件中的当前索引

来源:互联网 收集:自由互联 发布时间:2021-06-24
也许这是很容易做到的事情,但到目前为止,它让我整天都在努力工作. 我有一个充满桌子的转发器.转发器中的每一行都有一组控件.其中最重要的是AutoPostback = true的下拉列表. 当用户更改
也许这是很容易做到的事情,但到目前为止,它让我整天都在努力工作.

我有一个充满桌子的转发器.转发器中的每一行都有一组控件.其中最重要的是AutoPostback = true的下拉列表.

当用户更改所选索引时,此ddl必须回发,以便我可以在ddl中隐藏/显示控件.

问题是当用户更改ddl中的选定索引和控制回发时,在服务器端,我无法获取包含回发的ddl的行的索引.

希望它足够清楚,有人可以帮助我.

谢谢!

编辑:
也许这是不够清楚的事情:当我在转发器中的ItemTemplate中放置ID =“ddlSomething”的控件时,我在数据源中有5行,转发器中有5行ddl具有相同的id(在服务器端,在客户端将是类似“ctl01 $ddlSomething”,“ctl02 $ddlSomething”.
我的问题是,当ddl回发时,我不知道这些中的哪一个(例如)ddl是回发的那个,因为只看了Request.Form变量我可以看到控件“ddlSomething”发了它.

尝试:

<asp:DropDownList runat="server" id="myDDL" OnSelectedIndexChanged="myDDL_Changed" />

//fired when the DDL selected index changes
void myDDL_Changed(object sender, EventArgs e)
{
    //sender is the ddl
    DropDownList theDropDown = sender as DropDownList;
    int repeaterItemIndex = ((RepeaterItem)theDropDown.NamingContainer).ItemIndex;
}
网友评论