Возможно, уже слишком поздно менять свойство AutoPostBack на этапе обработки события: UpdatePanel , возможно, уже зарегистрировал свои триггеры.
Я бы начал сотключение AutoPostBack
и ViewState
(которое запоминает AutoPostBack
) в окне списка:
<asp:ListBox ID="lbAvailableForms" runat="server"
AutoPostBack="False" EnableViewState="False"
Style="height: 125px; width: 95%;"
OnSelectedIndexChanged="lbAvailableForms_SelectedIndexChanged">
</asp:ListBox>
Затем введите приватный член, чтобы отслеживать то, что мы хотим сделать, и установите этого участника в событииобработчик:
private bool _disableAutoPostBack = false;
protected void RLCompareParameter_SelectedIndexChanged(object sender, EventArgs e)
{
_disableAutoPostBack = true;
}
Затем используйте его в фазе PreRender
:
protected void Page_PreRender(object sender, EventArgs e)
{
lbAvailableForms.AutoPostBack = !_disableAutoPostBack;
}
Затем надеемся, что он работает как есть, поэтому нам не нужно динамически регистрировать AsyncPostBackTrigger на ListBox
, что было бы грязно.