이 예가 있는데 열거 형을 사용하여 숫자 값을 문자열 값으로 변경하려고합니다. .ClientTemplate 및 .EditorTemplateName과 같은 몇 가지 메서드를 시도했습니다. 열의 서식을 지정하려면 어떻게 열거 형을 사용할 수 있습니까? 다음은 그리드 예입니다Kendo Grid UI Html 도우미 열 값에 대한 대체 열
@(Html.Kendo().Grid<TelerikAspNetCoreApp2.Models.OrderViewModel>()
.Name("grid")
.Columns(columns =>
{
columns.Bound(p => p.OrderID).Filterable(false);
columns.Bound(p => p.Freight).EditorTemplateName("Test"); //This is the value to change
columns.Bound(p => p.OrderDate).Format("{0:MM/dd/yyyy}");
columns.Bound(p => p.ShipName).Filterable(f => f.UI("shipName"));
columns.Bound(p => p.ShipCity).Filterable(f => f.UI("shipCity"));
})
.Pageable()
.Sortable()
.Scrollable()
.Navigatable()
.Pageable()
.Scrollable()
.Filterable()
.HtmlAttributes(new { style = "height:550px;" })
.DataSource(dataSource => dataSource
.Ajax()
.PageSize(20)
.Read(read => read.Action("Orders_Read", "Grid"))
)
)
....
@functions {
public string UseEnum(string x)
{
return Enum.Parse(typeof(TelerikAspNetCoreApp2.Enums.Test), x).ToString();
}
}
그리고 이것은 예를 열거
public enum Test
{
zero = 0,
one = 10,
two = 20,
three = 30,
four = 40,
five = 50
}
public static List<SelectListItem> EnumToSelectList(Type enumType)
{
return Enum
.GetValues(enumType)
.Cast<int>()
.Select(i => new SelectListItem
{
Value = i.ToString(),
Text = Enum.GetName(enumType, i),
}
)
.ToList();
}
@functions {
public string UseEnum(string x)
{
return Enum.Parse(typeof(TelerikAspNetCoreApp2.Enums.Prova), x).ToString();
}
}
나는 그것을했으나 여전히 작동하지 않습니다. EnumToSelectList 메소드는 열거 형을 가진 외부 클래스에 있습니다. 그리드 열의 바운더리에 EditorTemplateName ("Test")을 추가했지만 여전히 작동하지 않습니다. –
'ViewBag.EnumTest'에'SelectListItem'의리스트를 수동으로 채우고 다시 테스트 해보십시오. –
업데이트 된 답변을 사용해보십시오. –