gpt4 book ai didi

asp.net - 如何在 mvc3 中创建自定义过滤器工具栏 html 帮助器

转载 作者:行者123 更新时间:2023-12-02 02:21:05 25 4
gpt4 key购买 nike

我为此苦苦挣扎了好一阵子。我需要创建一个自定义的 mvc3 html 帮助器,以便于过滤器和工具栏管理。

所有的帮助程序应该看起来像下面这样或类似的东西。我想要做的是有一个助手,我可以在其中提供工具栏按钮和过滤器字段,它会为我生成一个工具栏和过滤器表单。

我就是想不通,因为我是 asp.net mvc 的新手

@Html.Toolbar(x => {
x.AddFilterButton();
x.AddButton("Naujas");
x.AddDropDownList();
},
@<text>
@Html.EditorFor(Model.ListFilter.Name)
Filter
ResetFilter
</text>,
filterVisible: false)

我怎样才能做到这一点?任何帮助将不胜感激。真的谢谢。

最佳答案

像这样:

public static class ToolbarExtensions {
public static Toolbar Toolbar<T>(this HtmlHelper<T> html) {
return new Toolbar();
}
}

public class Toolbar : IHtmlString {
public string ToHtmlString() { /* build your HTML off the state here */ }

public Toolbar AddButton(string label) {
/* build up state here */

return this;
}
}

这里的语法会有点不同,而不是 lambda,看起来像这样:

@Html.Toolbar().AddButton("Button 1").AddButton("Button 2")

但您可以轻松地将其更改为在 lambda 中使用链接对象,而不是在 Toolbar 方法调用上使用。

IHtmlString 接口(interface)告诉 ViewEngine 在遇到对象时将对象输出为原始 HTML。链接只是通过在修改对象状态后返回方法中的当前实例来实现。

关于asp.net - 如何在 mvc3 中创建自定义过滤器工具栏 html 帮助器,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8124928/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com