是否可以使用一种方法进行MVC渲染控制

时间:2019-03-27 11:49:33

标签: asp.net-mvc razor

我们正在开发MVC应用程序。根据要求,我们需要使用方法填充VIEW。我创建了一个示例应用程序。您可以在“ {Controller}”文件夹下的Helper.cs类中查看用于生成控件的方法。当我们将@Html.TextBox("SampleTextBox")代码直接放置在视图中时,它可以正确呈现。但是,当我们使用一种方法生成相同的代码时,它无法正确呈现,并且显示为纯字符串。 如果有人对此有任何想法,请告诉我们,这将非常有帮助。
Sample code

我们需要使用一种方法来填充它,而不是直接将以下代码添加到视图中。

@Html.TextBox("SampleTextBox")

类似于

@Html.Raw(Helper.GetStringCode())

方法:

public static string GetStringCode()
 {
            return "@Html.TextBox(\"SampleTextBox\")";
 }

1 个答案:

答案 0 :(得分:0)

您可以在Shared文件夹中为Kendo Grid添加一个局部视图,并添加一个Html帮助程序扩展,以返回您的局部视图:

局部视图Shared/_KendoGrid.cshtml

@model CustomViewModel

@(Html.Kendo().Grid()...)

HTML辅助方法:

public static MvcHtmlString KendoGrid(this HtmlHelper helper, string header)
{
    return helper.Partial("Shared/_KendoGrid", new CustomViewModel { Header = header });
}

在您的.cshtml中:

@Html.KendoGrid("Custom header")