2014-03-04 3 views
0

나는 이 포함 된 ASP.NET Page을 가지고 있습니다.UserControl. 이제 ClickCheckoutButtonUserControl 인 경우 CustomerID 세션이 null 일 때 고객 정보가 입력되는 페이지로 리디렉션하려고합니다. UserControl을에서 enter image description hereasp.net의 UserControl에서 부모 메서드를 호출하는 방법?

:

protected void lnkCheckOut_Click1(object sender, EventArgs e) 
    { 

     if (Session["SalesCustomerID"] != null) 
     { 

      //CompleteOrder(); 

     } 
     else 
     { 
      //Call here method of Parent Page 
     } 
    } 

UserControl가 존재 Product.aspx 페이지에서

Product.aspx.cs합니다. 이 페이지에는 MasterPage도 포함되어 있습니다.

public void CallCustomerForm() 
    { 
     //show/redirect to customer entry form 
    } 

그래서, asp.net using c#?

+1

페이지에 가입하고 페이지를 유지할 수있는 사용자 컨트롤에 이벤트를 생성 할 어떤 이유 페이지의 특정 리디렉션 코드? http://stackoverflow.com/questions/6192739/how-do-i-raise-an-event-in-a-usercontrol-and-catch-it-in-mainpage – Malk

답변

1

UserControl 버튼 클릭에서 ParentControl에있는 메소드를 호출하는 방법을 나는 중지하고 당신의 디자인에 대해 생각한다고 생각합니다. 컨트롤에 포함 된 페이지에 대해 알 필요가 없어야합니다. 다른 컨트롤 내에서 페이지에 대한 컨트롤을 찾으려면 사실을 다시 생각해보아야합니다.

내가 알 수있는 가장 좋은 점은 (아키텍처에 대해 잘 알지 못한다면) 사용자 정의 컨트롤에서 찾기를 원하는 컨트롤에 대한 참조를 전달해야한다는 것입니다. 이렇게하면 통제가 외부의 사물에 대해 알 필요가 없습니다.

비슷한 질문이 이전에 이미 답변되었습니다. 여기

: 여기 http://www.codeproject.com/Articles/28503/Transfering-control-to-Page-ASPX-from-Control-ASCX

: How to call a method from user control to aspx page?

그리고 여기에 마지막으로 : ASP.NET Calling a Method in (ASPX) From a UserControl (ASCX)?

관련 문제