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

Seb*_*ian 3 .net asp.net repeater drop-down-menu

也许这是很容易做到的事情,但到目前为止,我花了一整天的时间来完成一些工作.

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

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

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

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

谢谢!

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

Rex*_*x M 5

尝试:

<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;
}
Run Code Online (Sandbox Code Playgroud)