Использование элементов управления ASP.NET на страницах WebMatrix cshtml - PullRequest
4 голосов
/ 12 марта 2011

Я строю сайт с помощью WebMatrix, используя синтаксис бритвы в файлах .cshtml.Тем не менее, я озадачен тем, как я могу использовать обычный набор элементов управления asp.net, которые находятся в наборе инструментов в Visual Studio - например: календарь, панель, список переключателей и т. Д. ... Возможно ли использовать их или можновы используете только хелперы с бритвой?

Ответы [ 3 ]

3 голосов
/ 12 марта 2011

Вы не можете использовать элементы управления ASP.NET с razor / .cshtml.Элементы управления ASP.NET работают с механизмом просмотра ASP.NET WebForms.Razor - это принципиально иной движок представления, чем веб-формы.

Если вы действительно хотите использовать «старые» элементы управления, переключитесь на страницы .aspx.Если это не вариант, загляните в библиотеку пользовательского интерфейса, например jQuery UI .Это должно дать вам аналогичный набор элементов управления.

Обратите внимание, что в бритве многие элементы управления, такие как список переключателей, устарели.Требуется всего несколько строк разметки, чтобы создать такое же поведение, но без проблем с привязкой данных.

2 голосов
/ 11 мая 2011

В качестве альтернативного инструмента вы можете использовать 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)

1 голос
/ 12 марта 2011

Нельзя использовать серверные элементы управления на веб-страницах ASP.NET. Он был разработан как альтернатива веб-формам.

Вы можете использовать обычный HTML или диапазон помощников HTML, которые работают так же, как и в MVC (без ModelBinding).

...