Repeater中的下拉列表仅返回默认值

时间:2012-01-04 20:51:22

标签: c# drop-down-menu repeater

我在

中有下拉列表
<ItemTemplate>
       <asp:DropDownList runat="server" ID="ddl_PostponeTime" >                                          
       </asp:DropDownList>
</ItemTemplate>

当我使用Linkbutton触发命令事件并尝试通过转发器项目编号获取并找到DropDown列表时

     ddl.selecteditem.value

我无法获得我选择的值,只有第一个(和默认值)值。 也许它与UpdatePanel有关? 还有其他想法吗?

2 个答案:

答案 0 :(得分:1)

无论您绑定DropDownList的哪个位置,请务必检查Page.IsPostBack == false。否则,您总是会得到最初的SelectedValue,因为ASP.NET有助于重新加载整个DropDownList

答案 1 :(得分:0)

是的,您需要使用UpdatePanel。你需要这样的东西:

<asp:UpdatePanel ID="TheUpdatePanel" runat="server"
 UpdateMode="Conditional">
 <ContentTemplate>

 //your controls...

 </ContentTemplate>
 <Triggers>
 <asp:AsyncPostBackTrigger ControlID="Button1" EventName="Click" />
 </Triggers>
</asp:UpdatePanel>

在下拉列表中设置Autopostback = true。