.cshtmlファイルのかみそり構文を使用してWebMatrixでサイトを構築しています。ただし、Visual Studioのツールボックスにあるasp.netコントロールの通常のセット(カレンダー、パネル、ラジオボタンリストなど)をどのように使用できるかについて困惑しています。これらを使用することは可能ですか、それともできますかかみそりでヘルパーを使用するだけですか?
3 に答える
ASP.NETコントロールをrazor/.cshtmlで使用することはできません。ASP.NETコントロールは、ASP.NETWebFormsビューエンジンで動作します。Razorは、Webフォームとは根本的に異なるビューエンジンです。
本当に「古い」コントロールを使用したい場合は、.aspxページに切り替えてください。それが不可能な場合は、 jQueryUIのようなUIライブラリを調べてください。これにより、同様のコントロールのセットが得られるはずです。
かみそりでは、ラジオボタンリストのような多くのコントロールが廃止されていることに注意してください。ただし、データバインディングの手間をかけずに、同じ動作を作成するには数行のマークアップが必要です。
別のツールとして、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();
}
最初にMVCTelerikをインストールする必要があることに注意してください(無料です:)およびOpenSource)
ASP.NETWebページでサーバーコントロールを使用することはできません。Webフォームの代替として設計されています。
プレーンHTMLを使用することも、MVCの場合と同様に機能する一連のHTMLヘルパーを使用することもできます(ModelBindingなし)。