업데이트 패널이 사용자 정의 제어를 위해 전체 게시물을 작성하는 이유는 무엇입니까?

StackOverflow https://stackoverflow.com/questions/616884

문제

다소 복잡한 사용자 정의 컨트롤이 있습니다. 사용자 정의 컨트롤에는 몇 개의 업데이트 패널이 있습니다.

업데이트 패널 내부에서 이와 같은 컨트롤을 사용하려고합니다.

    <asp:UpdatePanel ID="up1" runat="server">
    <ContentTemplate>
     <asp:Button ID="btn1" runat="server" Text="Sample Button" />&nbsp;&nbsp;<asp:Label ID="lblTime" runat="server"></asp:Label>    
     <cc1:MyCustomControl ID="MyCustomControl1" runat="server" >
    </cc1:MyCustomControl>
    </ContentTemplate>
</asp:UpdatePanel>

업데이트 패널에서 버튼을 클릭하면 Async Post가 다시 수행되며 페이지를 컨트롤하는 버튼을 클릭하면 화면 "깜박임"이 없습니다.

사용자 정의 컨트롤 내부에는 전체 포스트 백 (트리거를 기준으로)을 시도하는 업데이트 패널이 있습니다.

사용자 정의 컨트롤 내부에 무엇이 들어가더라도 페이지 레벨 업데이트 패널이 전체 포스트 백을 수행하지 않도록하려면 어떻게해야합니까?

도움이 되었습니까?

해결책 2

이와 유사한 문제를 해결했습니다. CompositeControl의 DropdownList를 가로 채기 위해 UpdatePanel을 얻으려면 어떻게해야합니까?

내 컨트롤을 제외하고 포스트 백이 포스트 백 트리거가있는 업데이트 패널에있었습니다. 나는 그 컨트롤을 뽑을 수 있도록 업데이트 패널에 중첩되지 않았고 그것을 해결했습니다.

다른 팁

UP1 UpdatePanel 컨트롤에서 BTN1 컨트롤을 사용하여 ASP를 명시 적으로 설정하는 것에 대해 생각해 보셨습니까?

<asp:UpdatePanel ID="up1" runat="server">
    <Triggers>
        <asp:AsyncPostBackTrigger ControlID="btn1" EventName="Click" />
    </Triggers>
    <ContentTemplate>     
        <asp:Button ID="btn1" runat="server" Text="Sample Button" />  
        <asp:Label ID="lblTime" runat="server"></asp:Label>         
        <cc1:MyCustomControl ID="MyCustomControl1" runat="server" />                 
    </ContentTemplate>
</asp:UpdatePanel>

편집하다: 업데이트 패널의 버튼의 ONCLICK 이벤트에서 업데이트 메소드를 명시 적으로 호출하려고하는 방법은 무엇입니까? 여기에는 사용자 정의 컨트롤에 포함 된 업데이트 패널이 포함됩니다.

먼저 전체 페이지 포스트 백을 일으키는 사용자 정의 컨트롤에 다른 문제가 있는지 먼저 살펴볼 것입니다. 어떤 경우에도 전체 업데이트 패널이 새로 고침 (여전히 Ajax)이 새로 고쳐진다는 것입니다.

그런 다음 둥지 업데이트 패널 제어 섹션을보십시오.http://msdn.microsoft.com/en-us/library/bb398867.aspx#

또한 속성 ENABLEPARTIALRENDERENTER를 사용하여 ScriptManager 컨트롤을 true로 설정해야합니다.

UpdatePanel에서 속성을 설정하십시오 ChildrenAsTriggers="true". 이것은 updatePanel에게 인터셉트를 지시합니다 모두 업데이트 패널 내부에서 발생하는 Postback 호출.

당신은 또한 탐구하고 싶을 수도 있습니다 UpdateMode 속성, 어떤 종류의 이벤트가 업데이트를 유발하는지 결정합니다. (기본적으로, 화면의 다른 패널이 새로 고침되면 업데이트 패널이 새로 고쳐집니다. 이것은 무슨 일이 일어나고 있는지 깨달을 때까지 잠시 동안 나를 던졌습니다.)

라이센스 : CC-BY-SA ~와 함께 속성
제휴하지 않습니다 StackOverflow
scroll top