如何在转发器中访问asp.net复选框控件以获取更新面板触发器?

时间:2012-09-27 11:21:01

标签: c# asp.net

我正在使用更新面板。转发器中有很多复选框,我想使用更新面板触发器,但我无法访问复选框控件。我该如何访问它?

<asp:UpdatePanel ID="up" runat="server">
    <ContentTemplate>
    </ContentTemplate>
    <Triggers>
        <asp:AsyncPostBackTrigger ControlID="checkbox1"
            EventName= "CheckedChanged" />
    </Triggers>
</asp:UpdatePanel>

2 个答案:

答案 0 :(得分:1)

您可以在ItemCreated of repeater

中添加此代码
ScriptManager scriptManager = ScriptManager.GetCurrent(this);
var cbx = (CheckBox)e.Item.FindControl("checkbox1") ;
if(cbx != null)
{
    cbx.CheckedChanged+= CheckBox1_CheckedChanged;
    scriptManager.RegisterAsyncPostBackControl(cbx);
}

答案 1 :(得分:1)

AsyncPostBackTrigger控件引用必须与作为触发器的更新面板位于同一命名容器中的控件。不支持基于其他命名容器中的控件的触发器。

您可以改为使用ScriptManager.RegisterAsyncPostBackControl