MOSS
SPContext.Current.FormContext.FormMode 속성
happynuri
2008. 4. 23. 11:22
Sharepoint 를 개발하다 보면 현재 아이템의 디스플레이 모드에 따라서 UI 를 변경하거나 하는 일이 있을 수 있다.
보통 이런경우 현재 페이지의 Context 를 사용하면 될것 같아서 여기 저기 정보를 찾아본 결과 Mirjam 님의 블로그에서 The use of SPContext 라는 포스트를 발견하였다.
이 포스트를 보고 좀더 확신을 가지게 되었고, 이후 작업을 진행하였으나 역시 SDK 만 보고서는 이를 찾기가 쉽지만은 않았다.
하는수 없이 여러가지로 테스트를 해본 결과 아래 그림과 같은 결과를 얻었다.

위의 그림은 비주얼스튜디오 WSS3.0 툴을 이용하여 웹파트 프로젝트를 만들고 이를 Newform.aspx 페이지에 추가한 화면이다.
아래는 웹파트의 소스이다.
writer.WriteLine("현재 아이템의 디스플레이 모드 : " + SPContext.Current.FormContext.FormMode);
아이템의 입력/수정/보기 세가지의 디스플레이 방식을 가지고 있듯이 SPContext.Current.FormContext.FormMode 의 속성 또한 네가지의 디스플레이 방법을 가지고 있는데 정리하면 다음과 같다.
뭐 이거 찾을라고 여태까지 소비한 시간이 만만치 않지만, 다시는 잊어 버리지 않을듯 싶다. ^^;
http://sharepoint.egloos.com/1183877
보통 이런경우 현재 페이지의 Context 를 사용하면 될것 같아서 여기 저기 정보를 찾아본 결과 Mirjam 님의 블로그에서 The use of SPContext 라는 포스트를 발견하였다.
이 포스트를 보고 좀더 확신을 가지게 되었고, 이후 작업을 진행하였으나 역시 SDK 만 보고서는 이를 찾기가 쉽지만은 않았다.
하는수 없이 여러가지로 테스트를 해본 결과 아래 그림과 같은 결과를 얻었다.

위의 그림은 비주얼스튜디오 WSS3.0 툴을 이용하여 웹파트 프로젝트를 만들고 이를 Newform.aspx 페이지에 추가한 화면이다.
아래는 웹파트의 소스이다.
writer.WriteLine("현재 아이템의 디스플레이 모드 : " + SPContext.Current.FormContext.FormMode);
아이템의 입력/수정/보기 세가지의 디스플레이 방식을 가지고 있듯이 SPContext.Current.FormContext.FormMode 의 속성 또한 네가지의 디스플레이 방법을 가지고 있는데 정리하면 다음과 같다.
보기방식(페이지명) | FormMode 속성 |
입력(NewForm.aspx) | New |
편집(EditForm.aspx) | Edit |
보기(DispForm.aspx) | Display |
잘못된 페이지인경우 | Invalid |
뭐 이거 찾을라고 여태까지 소비한 시간이 만만치 않지만, 다시는 잊어 버리지 않을듯 싶다. ^^;
http://sharepoint.egloos.com/1183877