网格控件中的HtmlHelper扩展方法
我需要一些帮助来创建这个扩展方法。
我的视图继承自
<%@ Page Title="" Language="C#" MasterPageFile="~/Views/Shared/NoSideMenu.Master"
Inherits="System.Web.Mvc.ViewPage<List<MyProject.Models.Customer>>" %>
并且我有一个由此处定义的网格控件
<% Html.Telerik().Grid(Model)
.Name("customer-history-grid").Footer(false).Columns(columns =>
{
columns.Bound(o => o.IsValidCustomer).Title(Html.Resource("ValidCustomerTableHeader"));
}
).Pageable(pager => pager.PageSize(25))
.Footer(true)
.Render();
%>
,我不想显示布尔值。相反,我想显示 Y
或 N
。例如,如果 o.IsValidCustomer
为 true,则 Y
,否则 N
。
我尝试编写以下扩展方法
public static string ConvertToString<T, TValue>(this HtmlHelper<T> helper, Expression<Func<T, TValue>> expression)
{
......
}
,但我的扩展方法选择 List
类型,而不是 Customer
对象。因此,我无法在 lambda 表达式中选择方法 o.IsValidCustomer
,例如
在 View 中...
columns.Bound(o => o.IsValidCustomer).Format(Html.ConvertToString(o => o.IsValidCustomer)).Title(Html.Resource("ValidCustomerTableHeader"));
I need some help creating this extension method.
My view inherits from
<%@ Page Title="" Language="C#" MasterPageFile="~/Views/Shared/NoSideMenu.Master"
Inherits="System.Web.Mvc.ViewPage<List<MyProject.Models.Customer>>" %>
And I have a grid control defined by
<% Html.Telerik().Grid(Model)
.Name("customer-history-grid").Footer(false).Columns(columns =>
{
columns.Bound(o => o.IsValidCustomer).Title(Html.Resource("ValidCustomerTableHeader"));
}
).Pageable(pager => pager.PageSize(25))
.Footer(true)
.Render();
%>
Here I don't want to display the boolean value. Instead I want to display Y
or N
. For example if o.IsValidCustomer
is true then Y
else N
.
I tried writing the below extension method
public static string ConvertToString<T, TValue>(this HtmlHelper<T> helper, Expression<Func<T, TValue>> expression)
{
......
}
But my extension method picks up the List<MyProject.Models.Customer>
type and not the Customer
object. So I cannot select the method o.IsValidCustomer
in the lambda expression for example
in View...
columns.Bound(o => o.IsValidCustomer).Format(Html.ConvertToString(o => o.IsValidCustomer)).Title(Html.Resource("ValidCustomerTableHeader"));
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(1)
可以编辑您的域模型吗?
例如添加这个
然后将其绑定为一列?
HTH,
查尔斯
Would it be possible to edit your domain model?
E.g. add this
Then just bind that as a column?
HTHs,
Charles