Dropdown-Liste wird zurückgesetzt
Meine Dropdown-Liste wird auf den Standardwert zurückgesetzt, wenn ich versuche, ein Element auszuwählen, und es löst auch keine Code-Behind-Methode aus, wenn ich einen Zeilenumbruch mache und versuche, es zu debuggen:
Hier ist Markup,
<script type="text/javascript">
function bringPOPup()
{
$.blockUI({message: $('#anotherUP'), css: { width: '600px' } });
}
</script>
<div id="anotherUP" style="display: none; cursor: default">
<asp:UpdatePanel ID="UpdatePanel2" runat="server" UpdateMode="Conditional" ChildrenAsTriggers="false">
<ContentTemplate>
<asp:DropDownList ID="drop1" runat="server" EnableViewState="true" AutoPostBack="true" OnSelectedIndexChanged="Drop1_SelectedIndexChanged"/>
</ContentTemplate>
<Triggers>
<asp:AsyncPostbackTrigger ControlID="drop1" EventName="SelectedIndexChanged" />
</Triggers>
</asp:UpdatePanel>
</div>
<asp:UpdatePanel ID="UpdatePanel1" runat="server" UpdateMode="Conditional" ChildrenAsTriggers="true">
<ContentTemplate>
<input type="button" id="Button3" value="Click me to Bring Pop Up" onclick="bringPOPup()" />
<br />
</ContentTemplate>
</asp:UpdatePanel>
Hier ist der Code dahinter,
public partial class myUserControl : UserControl
{
protected void Page_Load(object sender, EventArgs e)
{
if (!IsPostBack)
{
BindDropDownList();
}
}
protected void BindDropDownList()
{
using (SqlDataSource ds = new SqlDataSource(ConnectionString(), SelectCommand()))
{
System.Data.DataView dv = (System.Data.DataView)ds.Select(DataSourceSelectArguments.Empty);
if (dv.Count > 0)
{
drop1.DataSource = ds;
drop1.DataTextField = "UserName";
drop1.DataBind();
drop1.Items.Insert(0, "Please select a Username ");
}
}
UpdatePanel2.Update();
}
protected void Drop1_SelectedIndexChanged(object sender, EventArgs e)
{
//while debugging never hits break point.
}
}
Aktualisieren
Wenn ich auskommentiereUpdatePanel2
dann wird DDL nicht zurückgesetzt, aber der Code hinter der Methode wird immer noch nicht ausgelöst.