2012-05-29 2 views
1

안에 UserControl을 때이 내 마크 업입니다 : 내 UpdateMode를이 조건부로 설정되어 볼 수 있듯이UpdatePanel 조건 모드 문제 그것을

<asp:UpdatePanel runat="server" ID="updEml" UpdateMode="Conditional"> 
     <ContentTemplate> 
      <asp:LinkButton runat="server" Text="+ Add Email" ID="lnkAddEmail" OnClick="lnkAddEmail_Click" /> 
      <div id="Emlpopup" style="width: 470px; display: none; height: 200px;"> 
       <uc:AddEditEmailAddress runat="server" ID="ucAdEdEml" /> 
      </div> 
     </ContentTemplate> 
     <Triggers> 
      <asp:AsyncPostBackTrigger ControlID="lnkAddEmail" EventName="Click" /> 
      <asp:AsyncPostBackTrigger ControlID="btnAdEdEmail" EventName="Click" /> 
     </Triggers> 
    </asp:UpdatePanel> 

. lnkAddEmail 또는 btnAdEdEmail을 클릭하면 새로 고침됩니다. 그러나 문제는 btnAdEdEmail 내 UserControl을 내부에 그래서 나는 점점 오전 예외

"ID 'btnAdEdEmail'을 가진 컨트롤이 UpdatePanel 'updEml'에서 트리거 에 대한 찾을 수 없습니다"입니다.

. 이 문제를 어떻게 해결할 수 있습니까?

+0

UserControl에서 사용자 정의 EventHandler를 구현하고 새로운 이벤트에 대한 UpdatePanel 트리거를 업데이트 할 수 있습니다. http://forums.asp.net/post/1980781.aspx –

답변

0

기본적으로 UpdatePanel의 ChildrenAsTriggers 속성은 true로 설정됩니다. 즉, 게시물을 다시 시작하는 컨트롤이 새로 고침을 유발하므로 트리거를 지정하지 않아도됩니다.

+0

사실이 아닙니다. ChildrenAsTriggers는 즉각적인 자식 제어를위한 것입니다. 내 버튼은 usercontrol 안에 있습니다. –

+0

아니요, 즉각적인 자녀가 아닌 모든 자손을위한 것입니다. –

+0

자세한 내용은 다음을 참조하십시오. http://msdn.microsoft.com/en-us/library/system.web.ui.updatepanel.childrenastriggers.aspx –