Отключить управление во время обратной отправки

Я работаю с сеткой телерика, сделанной в пользовательском элементе управления, внутри этого элемента управления есть флажок

<telerik:GridTemplateColumn>
    <ItemTemplate>
        <asp:CheckBox ID="check" AutoPostBack="true" runat="server" OnCheckedChanged="check_CheckedChanged"/>
    </ItemTemplate>
</telerik:GridTemplateColumn>

Что мне нужно сделать, так это отключить определенную кнопку, которая находится вне пользовательского контроля (я знаю, что это противоречит цели независимости элемента управления, но это не то, что я могу изменить сейчас). Это связано с тем, что check_CheckedChanged выполняется слишком долго (поскольку выполняется много проверок), и пользователь может нажать кнопку до того, как она будет отключена результатом check_CheckedChanged. Кстати, у меня есть идентификатор кнопок в элементе управления, если это кому-то нужно.


person Juan Ignacio Petrovic    schedule 28.06.2016    source источник


Ответы (1)


Как вы указали, не идеальная ситуация, но вы можете использовать Javascript. В check_CheckedChanged запишите вызов Javascript функции hideButton(), которая находится вне пользовательского контроля.

ScriptManager.RegisterStartupScript(Page, Page.GetType(), "script", "hideButton();", true); 
person Seano666    schedule 28.06.2016
comment
Спасибо, я не совсем сделал то, что вы указали, но я пошел со сценарием, и это сработало! Спасибо за ответ! - person Juan Ignacio Petrovic; 30.06.2016