2011-03-11 5 views
4

.cshtml 파일의 면도기 구문을 사용하여 WebMatrix를 사용하여 사이트를 구축하고 있습니다. 그러나 Visual Studio의 도구 상자에서 찾을 수있는 asp.net 컨트롤의 일반적인 세트를 어떻게 사용할 수 있는지에 관해서는 난처한 편입니다 - 예 : 캘린더, 패널, 라디오 버튼 목록 등 ... 이들을 사용할 수 있습니까 아니면 할 수 있습니까? 당신은 면도기로 도우미 만 사용합니까?WebMatrix cshtml 페이지의 ASP.NET 컨트롤 사용

답변

3

ASP.NET 컨트롤을 면도기/.cshtml과 함께 사용할 수 없습니다. ASP.NET 컨트롤은 ASP.NET WebForms 뷰 엔진에서 작동합니다. 면도기는 웹 양식과 근본적으로 다른 뷰 엔진입니다.

'오래된'컨트롤을 사용하려면 .aspx 페이지로 전환하십시오. 선택 사항이 아니라면 jQuery UI과 같은 UI 라이브러리를 살펴보십시오. 그것은 당신에게 유사한 컨트롤 세트를 제공해야합니다.

면도기에서는 라디오 버튼 목록과 같은 많은 컨트롤이 더 이상 사용되지 않습니다. 비록 데이터 바인딩의 번거 로움없이 동일한 동작을 만들기 위해서 단지 몇 줄의 마크 업이 필요합니다.

+0

감사 힙을.. jQuery UI를 살펴 보겠다. –

1

ASP.NET 웹 페이지에서 서버 컨트롤을 사용할 수 없습니다. 이것은 Web Forms의 대안으로 설계되었습니다.

일반 HTML을 사용할 수도 있고 MVC와 비슷한 방식으로 작동하는 HTML 도우미를 사용할 수도 있습니다 (ModelBinding없이).

2

대체 도구로 Telerik Tabstrip을 사용하고 .csHtml 파일을 부분보기로 전달할 수 있습니다. 이처럼 어떤 일이 :

@{ Html.Telerik().TabStrip() 
     .Name("TabStrip") 
     .Items(tabstrip => 
     { 

      tabstrip.Add() 
       .Text("My First tab") 
       .Action("Index", "ControllerName") 
       .ImageUrl("~/Content/Common/Icons/Suites/mvc.png") 
       .Content(
       @Html.Partial("csHtmlName_1", (List<TypeOfYourData>)ViewData["NameOfrelatedView"]).ToString() 
       ); 

      tabstrip.Add() 
       .Text("My Second Tab") 
       .Action("secondAction", "ControllerName") 
       .ImageUrl("~/Content/Common/Icons/Suites/sl.png") 
       .Content(@Html.Partial("csHtmlName_2", (List<TypeOfYourDate>)ViewData["NameOfrelatedView"]).ToString() 
       ); 
     }) 
     .SelectedIndex(0) 
     .Render(); 
} 

가 먼저 MVC Telerik를 설치할 필요가 있습니다 (그것은 무료 :) 그리고 OpenSource 다음)

+0

고마워. 그들은 빛나 보입니다! –

관련 문제