我有一个Kendo.DropDownList
,将显示文化。
首次加载DropDown
时,我想根据数据源的属性之一将其默认值(选定的值)设置为当前区域性
这是下拉列表:
@(Html.Kendo().DropDownList()
.Name("culture")
.DataValueField("Value")
.DataTextField("DisplayText")
.DataSource(dataSource =>
{
dataSource.Read(read =>
{
read.Action("PopulateCultures", "CultureSelector");
});
})
.Events(events =>
{
events.Select("onCultureChange");
})
)
这是控制器的方法PopulateCultures
public JsonResult PopulateCultures()
{
string uCulture = System.Threading.Thread.CurrentThread.CurrentUICulture.ToString();
List<Culture> cultures = null;
cultures = new CultureModel().PopulateCulture();
if (Session["SiteUICulture"] != null) uCulture = Session["SiteUICulture"].ToString();
try
{
for (var i = 0; i < cultures.Count; i++)
cultures[i].IsDefault = cultures[i].Value == uCulture;
}
catch (Exception e)
{
}
return Json(cultures, JsonRequestBehavior.AllowGet);
}
此处,根据系统文化与列表中文化的价值之间的比较,IsDefault
是true
还是false
。
迭代通过区域性列表并基于isDefault
属性设置下拉列表的选定值的正确语法是什么?