2014-10-16 8 views
0

탭이있는 메뉴 항목을 클릭 할 때 여러 가지 도구를 표시하기 위해 처음으로 멀티 뷰 컨트롤을 사용하고 있습니다.MultiView 탭을 C# 코드 숨김 또는 숨기기?

Asp.net/C# 코드 비하인드만으로는 검색이 정말 놀랍습니다.

예를 들어 UserName의 세션 값이 일치하지 않는 경우 코드 숨김 탭을 어떻게 비활성화합니까?

이것은 C# 웹 응용 프로그램입니다. 보기 섹션 :

<asp:MultiView ID="ToolsMultiView" runat="server" ActiveViewIndex="0"> 
<asp:View ID="Tab1" runat="server"> 
    <div class="row"> 
     lots more code.. 
    </div> 
</asp:View> 
<asp:View ID="Tab2" runat="server"> 
    <div class="row"> 
     lots more code.. 
    </div> 
</asp:View> 
<asp:View ID="Tab3" runat="server"> 
    <div class="row"> 
     lots more code.. 
    </div> 
</asp:View> 

나는 또한 내가 ASP를 건너 .aspx 페이지에 조건 코드를 추가 할 수 없습니다 것을 발견했다.

파서 오류 메시지 : 렌더링 블록을 MultiView 컨트롤 안에 중첩시킬 수 없습니다. 뒤에 코드 (예 그런 일이)에서 다음

Line 171:   <div class="viewWrapper"> 
Line 172:    <asp:MultiView ID="ToolsMultiView" runat="server" ActiveViewIndex="0"> 
Line 173:    <%if (1 = 1) { %> 
Line 174:     <asp:View ID="Tab1" runat="server"> 
Line 175:      <div class="row "> 

답변

1
<asp:MultiView ID="MV1" runat="server"> 
    <asp:View ID="view1" runat="server"> 
     <p>View 1 - FOR Bob's EYES ONLY</p> 
    </asp:View> 
    <asp:View ID="view2" runat="server"> 
     <p>View 2 - for everyone</p> 
    </asp:View> 
</asp:MultiView> 

.

if (User.Identity.Name != "Bob") 
    { 
     MV1.Views.Remove(view1); 
     MV1.SetActiveView(view2); 
    }