C# 如何使用ASP.Net更新面板来避免完全回发?

C# 如何使用ASP.Net更新面板来避免完全回发?,c#,asp.net,ajax,triggers,updatepanel,C#,Asp.net,Ajax,Triggers,Updatepanel,我有一个名为“ddlCountry”的下拉列表,它只需要更新另一个名为“ddlCity”的下拉列表。 我应该如何使用UpdatePanel只加载第二个下拉列表,而不是执行完整的回发?因为我想如果没有在第一个下拉列表中将回发属性设置为“true”,我就无法获取“SelectedIndexChanged”事件 我试过这个 <li> <label>Grupo Gestor:</label> <asp:DropDownList ID="ddlCo

我有一个名为“ddlCountry”的下拉列表,它只需要更新另一个名为“ddlCity”的下拉列表。 我应该如何使用UpdatePanel只加载第二个下拉列表,而不是执行完整的回发?因为我想如果没有在第一个下拉列表中将回发属性设置为“true”,我就无法获取“SelectedIndexChanged”事件

我试过这个

<li>
    <label>Grupo Gestor:</label>
    <asp:DropDownList ID="ddlCountry" runat="server" Width="356px"
        DataTextField="Country" DataValueField="CodCountry" AutoPostBack="False"
        OnSelectedIndexChanged="ddlGrupoGestor_SelectedIndexChanged" />
</li>
<li>
    <label>Gestor:</label>
    <asp:UpdatePanel ID="upd_ddlGroup1" runat="server" UpdateMode="Conditional">
        <ContentTemplate>
            <asp:DropDownList ID="ddlCity" runat="server" Width="356px" DataTextField="City" DataValueField="CodCity" />
        </ContentTemplate>
        <Triggers>
            <asp:AsyncPostBackTrigger ControlID="ddlCountry" EventName="SelectedIndexChanged" />
        </Triggers>
    </asp:UpdatePanel>
</li>
  • Grupo Gester:
  • 手势:

  • 在您的场景中,最好使用ajax控件工具包的级联下拉列表

    请参见此处如何使用它:


    谢谢你,伙计。我以前从未听说过这件事。用下拉菜单解决了我的问题。但是我想还是不知道UpdatePanel的正确用法HeHeHeHewe将控件放在更新面板中,我们希望在不刷新整个页面的情况下进行更新(没有完整回发)。问题是SelectedIndexChanged在没有回发的情况下无法工作我做了。。。但是如果没有“AutoPostBack=”true“,当我在第一个下拉列表中选择另一项时,什么也不会发生。使用“AutoPostBack=“true”时,代码将转到.cs页面加载、用户控制页面加载和母版页加载。。我想避免这个级联下拉列表对你不起作用,这些文章对你没有帮助。不,你不能避免页面生命周期,UpdatePanel是专门为部分回发而设计的。此外,将第一个列表中的AutoPostback设置为false将意味着不会触发SelectedIndexChanged事件,即不会进行回发。