如何在 Grid.Mvc 列中呈现 2 个控件



我需要在 Grid.Mvc 控件中的每一行呈现标签和文本输入。根据行类型,每行可以具有不同的标签和控件。

我可以使用 htmlHelper 呈现 html 控件,但是如何使用 laber 和文本输入创建div 控件?

这是我到目前为止的情况:

@Html.Grid(Model.WFMaster.Activities).Columns(columns =>
{     
   columns.Add().Titled("Parameter").Sanitized(false).Encoded(false).RenderValueAs(a =>
   {           
      if ...
         //Stuck here. I can't create an div and add controls to it.
          return Html.TextBox("value");        
   });
});

对于该输出,您可以使用接受 Ihtmlstring 的 RenderValueAs 重载。下面是示例。

@Html.Grid(Model.WFMaster.Activities).Columns(columns =>
{     
   columns.Add().Titled("Parameter").Sanitized(false).Encoded(false).RenderValueAs(a =>
  new HtmlString
                       (
                         <div>
                         <input type="text" name="fname"><br>
                         <label for="lastname">Lastname</label>
                         </div>
                       )
);

});

样品:https://stackoverflow.com/a/33493299/3397630

最新更新