15

2 つの ContentPlaceHolder を含むページがあります。1 つは DropDown を持ち、もう 1 つはコンテンツを含む UpdatePanel を持ちます。

それらが異なる ContentPlaceholders にある場合、DropDown の selectedItemChanged イベントによって UpdatePanel への更新をトリガーするにはどうすればよいですか?

UpdatePanel1 は DropDown1 を認識していないため、次のコードは機能しません。

<asp:UpdatePanel ID="UpdatePanel1" runat="server" UpdateMode="Conditional"  ChildrenAsTriggers="true">
    <ContentTemplate>
        Some content that needs to be updated here...
    </ContentTemplate>
    <Triggers>
        <asp:AsyncPostBackTrigger ControlID="DropDown1" EventName="SelectedIndexChanged" />
    </Triggers>
</asp:UpdatePanel>

1 つの方法は、DropDown のアイテムが選択されたときにページ上の JavaScript によって呼び出される ajax ページ メソッドを作成することです。次に、コード ビハインドのページ メソッド内で、UpdatePanel1.Update() を呼び出します。

もっと簡単な代替手段はありますか?

4

3 に答える 3

2

updatePanel1.Update()サーバー側でメソッドを呼び出して、ページ UpdatePanels のいずれかを強制的に更新できます。たとえば、更新中に updatePanel1 がbutton1.Click呼び出さupdatePanel2.Update() れ、両方のパネルが更新されます。

于 2011-05-05T16:41:43.053 に答える