2012-07-09 1 views
0

나는 실제 사용자 그룹의 웹 페이지에서 모든 버튼을 동적으로 끄려 고하고 있습니다. 그래서 내가하고 싶은 것은 단지 visble로 설정하고 enable = false로 설정하는 것입니다.ASP 마스터 페이지에서 Button 컨트롤을 기반으로하는 foreach 루프가 가능합니까?

그래서 나는 아래와 같은 것을 찾고 있습니다.

foreach(Button idvButton on Master) 
{ 
idvButton.Visible = false; 
idvButton.Enable = false; 
} 

도움을 주시면 감사하겠습니다. 감사!

답변

2

자녀 페이지의 코드에 대해 어때요?

foreach(var btn in Master.Page.Form.Controls.OfType<Button>()) 
{ 
    btn.Visible = false; 
    btn.Enabled = false; 
} 
+0

나는 오류 가지고 : 개체 참조가 개체 –

+0

Wasim의 인스턴스로 설정되지 않았습니다 단지 때문에 u는 데이터 나 바이올리니스트 아니 같은 오류 개체 참조하지 p.campbell @ –

+0

을 누그러 의미하지 않습니다 볼 수 없습니다 개체의 인스턴스로 설정 –

1

이렇게하면 전체 마스터 페이지 전체에서 발견되는 모든 단추가 비활성화됩니다.

public partial class SiteMaster : System.Web.UI.MasterPage 
{ 
    protected void Page_Load(object sender, EventArgs e) 
    { 
     foreach (Control ctrl in this.Controls) 
     { 
      disableButtons(ctrl); 
     } 
    } 

    void disableButtons(Control ctrl) 
    { 
     foreach (Control ctrl2 in ctrl.Controls) 
     { 
      if (ctrl2.GetType() == typeof(Button)) 
      { 
       ((Button)ctrl2).Enabled = false; 
       ((Button)ctrl2).Visible = false; 
      } 
     } 
    } 
} 
0

여기에 답이 있습니다. 이전 게시물을 모두 결합해야했습니다.

   foreach (var btn in this.Page.Form.Controls.OfType<RadButton>()) 
       { 
        btn.Visible = false; 
        btn.Enabled = false; 
       } 
관련 문제