加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 百科 > 正文

c# – 在SelectList Collection中设置所选项

发布时间:2020-12-16 00:23:10 所属栏目:百科 来源:网络整理
导读:我有一个具有以下属性的类.它从现有列表构造SelectList对象,然后设置所选项. public SelectList ProviderTypeList{ get { SelectList list = new SelectList([...my collection...],"Value","Key"); SelectListItem item = list.FirstOrDefault(sli = sli.Te
我有一个具有以下属性的类.它从现有列表构造SelectList对象,然后设置所选项.

public SelectList ProviderTypeList
{
    get
    {
        SelectList list = new SelectList([...my collection...],"Value","Key");
        SelectListItem item = list.FirstOrDefault(sli => sli.Text == SelectedProviderType);
        if (item != null)
           item.Selected = true;
       return list;
    }
}

但是,当此代码完成时,item.Selected为true.但是SelectList集合中的相应项仍为null.

我似乎无法找到更新集合中对象的方法,因此将在生成的HTML中使用该设置.

我正在使用@ Html.DropDownListFor来呈现HTML.但我可以看到,只要执行此代码,集合中的对象就不会被修改.

任何人都能看到我错过的东西吗?

解决方法

SelectList中有一个可选的附加参数

SelectList list = new SelectList([...my collection...],"Key",SelectedID);

检查定义

public SelectList(IEnumerable items,string dataValueField,string dataTextField,object selectedValue);

它设置选定的值,与dataValueField的类型相同

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读