2013-08-01 2 views
2

레이아웃 세부 정보 화면을 열 때 발생하는 코드를 작성하고 싶습니다. 이벤트, 일종의 API 또는 Sitecore UI를 납치하는 방법이 있나요? Sitecore.config 이벤트 섹션 모자에는 관련이 없습니다.레이아웃 세부 정보 화면이 열릴 때 발생하는 이벤트가 있습니까?

내가하고 싶은 것은 나중에 사용자 지정 컨트롤에서 사용할 수 있도록 현재 업데이트하고있는 항목의 ID를 캡처하는 것입니다.

Sitecore 6.6을 사용하고 있습니다.

답변

6

마렉 Musielak의 답변은 훌륭합니다. 다른 방법은 'Details'버튼에서 실행 된 명령을 변경하는 것입니다. commands.config에서 item:setlayoutdetails을 찾으십시오.

작업을 수행하는 고유 한 클래스를 만든 다음 나중에 Sitecore.Shell.Framework.Commands.SetLayoutDetails을 인스턴스화 할 수 있습니다.

6

당신은 \sitecore\shell\Applications\Content Manager\Dialogs\LayoutDetails\LayoutDetails.xml을 무시하고 옆의 코드를 변경할 수 있습니다

<CodeBeside 
    Type="Sitecore.Shell.Applications.ContentManager.Dialogs.LayoutDetails.LayoutDetailsForm,Sitecore.Client"/> 

단순히 LayoutDetailsForm에서 상속하고, 예를 들어 우선합니다 사용자 정의 클래스에서 상속 OnLoad 방법.

+0

이 답변은 내가 TwentyGotoTen의 대답을 사용하여 끝내야한다고 생각한 일종의 것이 었습니다. 미래에 변화가 덜 할 것 같은 느낌을 구현하는 것이 더 쉬웠 기 때문입니다. Sitecore가 버전 7에서 새로운 UI를 출시하고 있다는 것을 알고 있습니다. – Jon