2012-06-19 3 views
2

다른 URL에서 다른 URL로 리디렉션되도록 마스터 페이지에있는 링크 (버튼)를 어떻게 만들 수 있습니까? 다른 .aspx 페이지에서 클릭하면 어떻게됩니까?마스터 페이지에 링크

+5

에 오신 것을 환영에 유래 할 수 있습니다. 너 뭐 해봤 니? –

+0

마스터 페이지에서 NavigateUrl (PostBackUrl)을 공개 속성으로 표시하고로드 된 페이지에 따라 URL을 설정합니다. – Koste

+1

진행 코드 표시 –

답변

0

당신이 당신의 영문 페이지로드 방법 같은 것을 할 수

protected void Page_Load(object sender, EventArgs e) 
    { 
     try 
     { 
      /// Access Master Page control 
      LinkButton lnkButton = (LinkButton)this.Master.FindControl("lnkButtonName"); 
      /// set postback url or whatever 
      lnkButton.PostBackUrl = ""; 
     } 
     catch(Execption e) 
     {} 
    } 
0

당신은 석사 Page_Init 이벤트 핸들러에서 설정하고 페이지 참조 얻을 HttpContext.CurrentHandler을 사용할 수

protected void Page_Init(Object sender, EventArgs e) 
{ 
    var page = HttpContext.Current.Handler as Page; 
    if (page is WebForm1) 
     LinkButton1.PostBackUrl = "WebForm2.aspx"; 
    else if (page is WebForm2) 
     LinkButton1.PostBackUrl = "WebForm1.aspx"; 
    else 
     LinkButton1.PostBackUrl = "WebForm3.aspx"; 
} 
+0

이것을 위해 작동하지만 같은 페이지로 리다이렉트 –

+0

@AntonioArredondo : 무슨 소리 야? 'WebForm1'의 경우 LinkButton은 WebForm2.aspx로 리디렉션됩니다. 이것은 단지 예일뿐입니다. 예상대로 작동합니까? –

+0

안녕하세요, Tim, 그 뜻은 regradless입니다. aspx 나는 링크를 클릭하면 동일한 페이지로 리디렉션됩니다, 각 WebForm에 대해 다른 URL을 할당했지만 여전히 동일한 페이지로 리디렉션합니다. –

0

을 다음과 같은 작업을 수행하십시오 (테스트되지 않음).

내부 마스터 페이지 (이 예제의 경우 siteMaster)에 public 속성을 추가하십시오. 당신의 영문 페이지의 코드 숨김에서

public void SetButtonUrl(string NewUrl) 
{ 
    this.btnMyButton.NavigateURL = NewUrl; 
} 

는 각각 원하는 URL을 추가

((siteMaster)Master).SetButtonUrl("~/someurl"); 
관련 문제