我使用Razor将IEnumerable对象绑定到Kendo ComboBox,但在填充正确的DataTextField值时遇到了一些问题。
模型
public class LanguageInformation
{
public Languages Language { get; set; }
public int LanguageId { get; set; }
}语言Enum
public enum Languages
{
English = 1,
Spanish = 2,
French = 3,
German = 4
}剃刀
@(Html.Kendo().ComboBox()
.Name("Language")
.DataTextField("Language")
.DataValueField("LanguageId")
)(注意:数据源是定义的,返回的数据很好,只是上面没有包括它)
我遇到的问题是DataTextField。我想把这些语言命名为enum,但不知如何归还它。
我尝试过几种不同的方法,比如
.DataTextField(Enum.GetName(typeof(Languages), "Language"))但这会导致
传入的值必须是枚举基。
错误
那么,如何将枚举值的名称作为DataTextField返回呢?
发布于 2014-07-24 21:51:30
传统上,Kendo不绑定到Enum,而是绑定到列表。您可以用下面的代码从Enum中列出一个列表。
@(Html.Kendo().ComboBox()
.Name("Language")
.BindTo(Enum.GetNames(typeof(Languages)).ToList()
)https://stackoverflow.com/questions/24936704
复制相似问题