title: Update Panel & Event firing twice
body: <p>I have an ASPX page with 3 dropdown boxes via Infragistic controls. 1 of them is inside an UpdatePanel and the two outside of the UpdatePanel is suppose to control what is displayed in the 3rd one via AsynPostBack Event. Both dropdown boxes outside of the UpdatePanel call the same function in the code behind but depending on which object I pass to it, it will show something in the 3rd drop-down box. Problem is, the function appears to be getting triggered twice regardless of which dropdown box I select and each call passes its control to the function and the second one is what always being displayed even when I click on the first one. How do I stop that? I'm expecting for the function to just fire once depending on which control I select. I also tried to have each dropdown box point to its own function and still, both of them got triggered...</p>
  
  <pre><code>&lt;td style="width:3px;"&gt;&lt;asp:HiddenField ID="pnb_recno" runat="server" /&gt;&lt;/td&gt;
  &lt;td style="width:100px;"&gt;Line Of Business:&lt;/td&gt;
  &lt;td colspan="2" width="150px"&gt;&lt;!--OnSelectionChanged="pnb_product_list"--&gt;
      &lt;ig:WebDropDown ID="pnb_ddRgn" runat="server" Width="175px" DropDownContainerHeight="100px" 
          EnableDropDownAsChild="false" TextField="Name" DropDownContainerWidth="175px" Font-Size="11px" 
          StyleSetName="Windows7" OnSelectionChanged="pnb_product_list" AutoPostBack="true"  ClientEvents-SelectionChanged="pnb_chgLOB" &gt; 
          &lt;Items&gt;
              &lt;ig:DropDownItem Text="" Value="" /&gt;
              &lt;ig:DropDownItem Text="Global Client Access" Value="Global Client Access" /&gt;
              &lt;ig:DropDownItem Text="Solution Center" Value="Solution Center" /&gt;
              &lt;ig:DropDownItem Text="Both" Value="Both" /&gt;
          &lt;/Items&gt;
      &lt;/ig:WebDropDown&gt;
  &lt;/td&gt;
  &lt;td style="width:3px;"&gt;&lt;/td&gt;
  &lt;td style="width:100px;"&gt;Problem Type:&lt;/td&gt;
  &lt;td colspan="2" width="150px"&gt;
      &lt;ig:WebDropDown ID="pnb_ddPblmTyp" runat="server" Width="175px" DropDownContainerHeight="80px" EnableDropDownAsChild="false" TextField="Name" DropDownContainerWidth="175px" Font-Size="11px" StyleSetName="Windows7" AutoPostBack="true" OnSelectionChanged="pnb_product_list"&gt;
          &lt;Items&gt;
              &lt;ig:DropDownItem Text="" Value="" /&gt;
              &lt;ig:DropDownItem Text="Infrustructure" Value="Infrustructure" /&gt;
              &lt;ig:DropDownItem Text="Products" Value="Products" /&gt;
          &lt;/Items&gt;
      &lt;/ig:WebDropDown&gt;
  &lt;/td&gt;
  &lt;td colspan="2" width="150px"&gt;
      &lt;asp:UpdatePanel ID="pnb_udtPnlPrdts" runat="server" UpdateMode="Conditional"&gt;
      &lt;Triggers&gt;
          &lt;asp:AsyncPostBackTrigger ControlID="pnb_ddRgn"  EventName="SelectionChanged" /&gt;
          &lt;asp:AsyncPostBackTrigger ControlID="pnb_ddPblmTyp"  EventName="SelectionChanged" /&gt;
      &lt;/Triggers&gt;
          &lt;ContentTemplate&gt;
              &lt;ig:WebDropDown ID="pnb_ddPrdts" runat="server" Width="175px" EnableClosingDropDownOnSelect="false" TextField="ProductName" EnablePaging="false" DropDownContainerHeight="175px" EnableMultipleSelection="true" MultipleSelectionType="Checkbox" StyleSetName="Windows7" DisplayMode="DropDown"&gt;
                  &lt;ClientEvents SelectionChanged="selectedIndexChanged" SelectionChanging="selectedIndexChanging" /&gt;
              &lt;/ig:WebDropDown&gt;
          &lt;/ContentTemplate&gt;
      &lt;/asp:UpdatePanel&gt;
  &lt;/td&gt;
  
  
  
  protected void pnb_product_list(object sender, EventArgs e)
  {
  
      try
      {
          using (SqlConnection sqlConnection = new SqlConnection(connectionString))
          {
              using (SqlCommand sqlCommand = new SqlCommand("dbo.getDdProducts", sqlConnection))
              {
                  sqlCommand.CommandTimeout = 0;
                  sqlCommand.CommandType = CommandType.StoredProcedure;
  
                  if (!String.IsNullOrEmpty(pnb_ddRgn.CurrentValue))
                      sqlCommand.Parameters.AddWithValue("@lob", pnb_ddRgn.CurrentValue);
                  else
                      sqlCommand.Parameters.AddWithValue("@alert_type", pnb_ddPblmTyp.CurrentValue);
  
                  using (DataTable dataTable = new DataTable())
                  {
                      using (SqlDataAdapter dataAdapter = new SqlDataAdapter(sqlCommand))
                      {
                          dataAdapter.Fill(dataTable);
                      }
  
                      pnb_ddPrdts.DataSource = dataTable;
                      pnb_ddPrdts.DataBind();
                  }
              }
          }
      }
      catch (Exception exception)
      {
  
      }
  }
  </code></pre>