2010-12-23 5 views
0

DisplayFor 렌더링을 선택하는 방법이 있습니까?

다음 코드를 고려하십시오.

<%: Html.DisplayFor(model => model.SomeBoolean)%> 

<%: Html.DisplayFor(model => model.SomeInt)%> 

첫 번째는 부울로 바인딩되어 비활성화 된 드롭 다운 목록을 렌더링합니다. 두 번째는 int에 바인딩되며 이는 단순히 결과를 텍스트로 렌더링합니다.

int 또한 드롭 다운 목록도 렌더링하고 싶습니다.

내 옵션에는 무엇이 있습니까?

많은 감사드립니다.

답변

1

MVC에는 일련의 기본 편집기 및 디스플레이 템플릿이 있습니다. 컨트롤러의보기 폴더에 DisplayTemplates 폴더를 만들어 자신 만의 템플릿을 만들거나 공유 폴더의 DisplayTemplates 폴더에 추가하여보다 많은 전역 템플릿을 정의 할 수 있습니다.

시스템 유형의

는, 실제의 형태 이름이 아닌 int에 대한 즉, 언어 별 바로 가기를 (사용, 면도기의 템플릿 Int32.ascx 또는 Int32.cshtml를 호출합니다.

을 당신은 더 과부하를 사용하거나하여 템플릿을 지정할 수 있습니다 (내가 아는 이것은 EditorFor에서 가능합니다. DisplayFor도 마찬가지입니다.) 또는 다른 템플릿을 사용하려는 특정 속성이있는 경우 데이터 주석을 사용할 수 있습니다.

복잡한 유형도 있습니다.

+0

ould 데이터 주석을 사용하여이 작업을 수행합니까? [DisplayFormat]이 있다는 것을 알고 있습니다 만, 어떻게하면 드롭 다운 목록을 반환 할 수 있습니까? – 4imble

+0

UIHint 특성입니다. 다음은 템플릿뿐만 아니라 두 데이터 주석에 대한 유용한 기사 모음입니다. http://bradwilson.typepad.com/blog/2009/10/aspnet-mvc-2-templates-part-1-introduction.html –

관련 문제