2009-09-28 2 views
0

나는 이끼류 환경, 특히 비 게시 페이지가있는 특정 페이지에서 사이트 작업 메뉴를 숨기려고합니다.페이지에 따라 이끼에 사이트 작업 메뉴 숨기기

내 masterpage에서 나는 그래서 그것을 달성하기 위해 SPSecurityTrimmedControl를 사용 찾고 있었어요 :

<Sharepoint:SPSecurityTrimmedControl runat="server" Permissions="ApproveItems"> 
<PublishingSiteAction:SiteActionMenu runat="server"/> 
</SharePoint:SPSecurityTrimmedControl> 

을하지만이 역할 만하지 페이지를 기반으로 기반으로 보인다. 누구든지 대안을 제시 할 수 있습니까?

답변

1

아주 좋은 방법은 지정한 몇 가지 기준에 따라 하위 컨트롤을 숨기는 자체 래퍼 컨트롤을 작성하는 것입니다. 정확히 SPSecurityTrimmedControl과 같습니다!

Waldeks blog entry을 참조하십시오. 그는 익명 사용자를위한 Action 메뉴를 숨기고 있기 때문에 자신 만의 기준을 넣으면됩니다.

0

이것이 최선의 방법인지 아닌지 잘 모르겠지만 비슷한 (숨기기/표시) 항목이 있습니다. UserControl을 만든 다음 masterpage에 포함 시켰습니다. \ 프로그램 파일 \ 공용 Files \ Microsoft Shared \ 웹 :

1. 사용자 정의 컨트롤

namespace YourCompany.Namespace 
{ 
    public class HideSiteActionsClass : System.Web.UI.UserControl 
    { 
     protected override void OnLoad(EventArgs e) 
     { 
      // do work to hide site actions depending on page 
     } 
    } 
} 

2. UserControl을의 ASCX 파일 C의

내용을 작성 뒤에 코드를 작성 Server Extensions \ 12 \ YourUserControl.ascx

<%@ Control Language="C#" Inherits="YourCompany.Namespace.HideSiteActionsClass,YourDLLThatHasTheClass, Version=1.0.0.0, Culture=neutral, PublicKeyToken=b4145551be317a94" compilationMode="Always" %> 

3. 상단에 이것을 넣어 masterpage

에 UserControl을 추가 :

<%@ Register TagPrefix="yourTagPrefix" TagName="YourTagName" src="~/_controltemplates/YourUserControl.ascx" %> 

페이지에이 곳을 넣어 :

<yourTagPrefix:YourTagName id="AUserControlID" runat="server" EnableViewState="false"></yourTagPrefix:YourTagName> 

당신은 구글이나 this page에 대한 정보를 찾을 수 있습니다.

관련 문제