title: CheckBoxList AJAX async postback issue
body: <p>I have 2 CheckBoxList controls - chk1 and chk2. I need to use an async postback to clear the selections of a CheckBoxList if the other one is selected. The following will not clear chk1 if it had selections, and an item chk2 was checked: </p>
  
  <pre><code>&lt;asp:ScriptManager ID="sm1" runat="server" &gt;&lt;/asp:ScriptManager&gt;
      &lt;asp:UpdatePanel ID="upd" runat="server"&gt;
          &lt;Triggers&gt;
              &lt;asp:AsyncPostBackTrigger ControlID="chk1" /&gt;
              &lt;asp:AsyncPostBackTrigger ControlID="chk2" /&gt;
          &lt;/Triggers&gt;
          &lt;ContentTemplate&gt;
              &lt;asp:Label ID="result" runat="server" /&gt;
          &lt;/ContentTemplate&gt;
      &lt;/asp:UpdatePanel&gt;
  
      &lt;div style="overflow: auto; height: 150px;"&gt;
          &lt;asp:CheckBoxList runat="server" ID="chk1" OnDataBound="assignClickBehaviours" AutoPostBack="true"&gt;
              &lt;asp:ListItem Value="1" Text="One"&gt;&lt;/asp:ListItem&gt;
              &lt;asp:ListItem Value="2" Text="Two"&gt;&lt;/asp:ListItem&gt;
              &lt;asp:ListItem Value="3" Text="Three"&gt;&lt;/asp:ListItem&gt;
              &lt;asp:ListItem Value="100" Text="..."&gt;&lt;/asp:ListItem&gt;
              &lt;asp:ListItem Value="150" Text="One hundred and Fifty"&gt;&lt;/asp:ListItem&gt;
          &lt;/asp:CheckBoxList&gt;
      &lt;/div&gt;
  
      &lt;div style="overflow: auto;"&gt;
          &lt;asp:CheckBoxList runat="server" ID="chk2" AutoPostBack="true"&gt;
              &lt;asp:ListItem Value="1" Text="One"&gt;&lt;/asp:ListItem&gt;
              &lt;asp:ListItem Value="2" Text="Two"&gt;&lt;/asp:ListItem&gt;
              &lt;asp:ListItem Value="3" Text="Three"&gt;&lt;/asp:ListItem&gt;
          &lt;/asp:CheckBoxList&gt;
      &lt;/div&gt;
  </code></pre>
  
  <p>code behind:</p>
  
  <pre><code>protected void Page_Load(object sender, EventArgs e)
      {
          processChecks();
      }
  
      private void processChecks()
      {
          if(chk2.SelectedIndex&gt;-1)
              chk1.ClearSelection();    
      }
  </code></pre>
  
  <p>If the whole thing was put in the update panel, it would work... but because there can be 150 items in the checkbox, the scrolling on the overflow:auto would flick back to the top if an item at the bottom was selected. I need the scroll state to stay put (hence the need for async postback). Any ideas or alternatives?</p>