Dropdownlist im gridview nicht feuern selectedindex geändert-Ereignis

Problem habe ich mit nicht feuern ausgewählte index geändert-Ereignis des gridview, dropdownlist im. Ich gegangen durch den SO Thread . Es wird nicht mehr gearbeitet, ganz für mich. Ich habe Implementierung wie folgt Aussehen.

.ASPX

<asp:DropDownList ID="DDL1" runat="server" AutoPostBack="true"   OnSelectedIndexChanged="DDL1_SelectedIndexChanged">
  <asp:ListItem Text="Review" Value="Review" Selected="True">Review</asp:ListItem>
  <asp:ListItem Text="Level1" Value="lvl1">Send Back to Level1</asp:ListItem>
</asp:DropDownList>

.CS

protected void Page_Load(object sender, EventArgs e)
  {
   if(!Page.IsPostBack)
  {
    //Bind the GridView to something.
       DataBindGrid();
  }
 else {
    //Bind the GridView again to maintain previous entered data in the gridview
       DataBindGrid();
  }
  }

  protected void DDL1_SelectedIndexChanged(object sender, EventArgs e)
  {
      this.lblCity.Text = ((DropDownList)sender).SelectedValue;
  }

protected void grdPoll_RowDataBound(object sender, GridViewRowEventArgs e)
{
  if(Page.IsPostBack)
  {
    if(e.Row.RowType == DataControlRowType.DataRow)
    {
      DropDownList ddl = e.Row.FindControl("DDL1") as DropDownList;
      if(ddl != null)
      {
        ddl.SelectedIndexChanged += new EventHandler(DDL1_SelectedIndexChanged);
      }
    }
  }
}

Wenn ich halten if(!Page.IsPostBack) block nur dann funktioniert es einwandfrei. Aber ich will else block auch. Whats going falsch mit der Implementierung. Können Sie bitte deuten auf die Lösungen

Schreibe einen Kommentar