如何在 Syncfusion DropDownList 控件中显示所选项目

How to show selected item in Syncfusion DropDownList control

我正在使用 Syncfusion 控件开发 ASP.NET MVC 应用程序。在我看来,我有一个下拉列表。该模型有一个 属性 "Categories" 类型的列表。

public class Category
{
    public int XKategorieId { get; set; }
    public int? Id { get; set; }
    public string Hinweis { get; set; }
    public string Kategorie { get; set; }
}

视图的模型还有一个属性"IdFromCategory"。型号是:

public class ReportModel
{
    public int? IdFromCategory { get; set; }
    public List<Category> Categories { get; set; }
}

我通过设置 "DropDownList" 的 "DataSource" 来显示下拉列表中的所有类别。现在,我的问题是我想在加载视图时显示在 "DropDownList" 中选择的项目,并且所选项目将是 "Id" 等于 "IdFromCategory " 的项目。

@Html.EJS().DropDownList("KundenBetreuung").DataSource(Model.Categories).Fields(new Syncfusion.EJ2.DropDowns.DropDownListFieldSettings { Text = "Kategorie", Value = "Id" }).Value(Model.IdFromCategory.ToString()).Width("100%").Render();

这是我的代码,我无法在 "DropDownList"

中设置所选项目

在 Razor 代码中,您已将值 属性 填充为 Model.IdFromCategory.ToString()(一个字符串),其中声明的属性 IdFromCategoryId 都是整数。这种不匹配的类型是最终导致问题的原因,并且未设置该值。要成功设置该值,请确保提供的值在数据源中可用并且其类型也匹配。

建议修改代码如下

@Html.EJS().DropDownList("KundenBetreuung").DataSource(Model.Categories).Fields(new Syncfusion.EJ2.DropDowns.DropDownListFieldSettings { Text = "Kategorie", Value = "Id" }).Value(Model.IdFromCategory).Width("100%").Render();

检查以下示例以供进一步参考 Example