在 post 返回时禁用控制
Disable control while post back is happening
我正在使用用户控件中制作的 telerik 网格,此控件内有一个复选框
<telerik:GridTemplateColumn>
<ItemTemplate>
<asp:CheckBox ID="check" AutoPostBack="true" runat="server" OnCheckedChanged="check_CheckedChanged"/>
</ItemTemplate>
</telerik:GridTemplateColumn>
我需要做的是在 "check_CheckedChanged" 发生时禁用用户控制之外的某个按钮(我知道这违背了控制独立的目的,但这不是我现在可以改变的).这是因为 check_CheckedChanged 执行时间太长(因为它进行了大量验证)并且用户可以在按钮被 check_CheckedChanged 禁用之前按下按钮。顺便说一句,如果有人需要的话,我在控件中确实有按钮 ID。
如您所指出的,情况不太理想,但您可以使用 Javascript。在 check_CheckedChanged 中,写出对 hideButton() 函数的 Javascript 调用,该函数不在用户控制范围内。
ScriptManager.RegisterStartupScript(Page, Page.GetType(), "script", "hideButton();", true);
我正在使用用户控件中制作的 telerik 网格,此控件内有一个复选框
<telerik:GridTemplateColumn>
<ItemTemplate>
<asp:CheckBox ID="check" AutoPostBack="true" runat="server" OnCheckedChanged="check_CheckedChanged"/>
</ItemTemplate>
</telerik:GridTemplateColumn>
我需要做的是在 "check_CheckedChanged" 发生时禁用用户控制之外的某个按钮(我知道这违背了控制独立的目的,但这不是我现在可以改变的).这是因为 check_CheckedChanged 执行时间太长(因为它进行了大量验证)并且用户可以在按钮被 check_CheckedChanged 禁用之前按下按钮。顺便说一句,如果有人需要的话,我在控件中确实有按钮 ID。
如您所指出的,情况不太理想,但您可以使用 Javascript。在 check_CheckedChanged 中,写出对 hideButton() 函数的 Javascript 调用,该函数不在用户控制范围内。
ScriptManager.RegisterStartupScript(Page, Page.GetType(), "script", "hideButton();", true);