gpt4 book ai didi

c# - fubumvc - 将集合呈现为下拉列表

转载 作者:太空狗 更新时间:2023-10-29 22:27:54 24 4
gpt4 key购买 nike

我无法理解如何将集合呈现为下拉列表。

如果我有这样的模型:

public class AccountViewModel {             

public string[] Country { get; set; }
}

我希望字符串集合呈现为下拉列表。

使用 html 页面助手 InputFor 似乎不起作用。它只是呈现一个文本框。

我注意到 InputFor 可以反射(reflect)属性类型并相应地呈现 html。 (就像 bool 字段的复选框一样)。

我还注意到 FubuPageExtensions 有 CheckBoxFor 和 TextBoxFor 的方法,但没有任何等同于 DropDownListFor 的方法。

在理解 fubu 中的 html 约定方面,我可能遗漏了一些非常基础的东西。

我需要自己构建选择标签吗?如果是这样,推荐的方法是什么?

最佳答案

你是对的,(在我上次看的时候)没有 FubuMVC.Core HTML 扩展方法来生成选择标签,尽管你可以使用 HtmlTags library通过代码生成选择标签。

正如您在问题中提到的那样,正确的攻击方法可能是使用 HTML 约定和 HtmlTags 库,例如 FubuMVC.Recipes 中演示的那样。例如“src/UI/HtmlConventionsWithPageExtensions”。

例如枚举生成示例可能是:

this.Editors
.If(e => e.Accessor.PropertyType.IsEnum)
.BuildBy(er =>
{
var tag = new HtmlTag("select");
var enumValues = Enum.GetValues(er.Accessor.PropertyType);
foreach (var enumValue in enumValues)
{
tag.Children.Add(new HtmlTag("option").Text(enumValue.ToString()));
}

return tag;
});

FubuMVC.Recipes 存储库非常新,并且还在不断增长,因此周围可能有一些更好的示例,但希望这能给您一些想法。

关于c# - fubumvc - 将集合呈现为下拉列表,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8811028/

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