基本上我想在SelectList的开头插入一个项目,默认值为0,文本值为" - 选择一个 - "
就像是
SelectList list = new SelectList(repository.func.ToList());
ListItem li = new ListItem(value, value);
list.items.add(li);
Run Code Online (Sandbox Code Playgroud)
可以这样做吗?
在没有选择值的情况下实例化后,如何设置SelectList的selectedvalue属性;
SelectList selectList = new SelectList(items, "ID", "Name");
Run Code Online (Sandbox Code Playgroud)
我需要在此阶段后设置所选值
我正在扩展一个枚举,并给出以下代码,selectListItems是一个通用的SelectListItem列表,它具有我的枚举的所有正确值.
第一个foreach循环工作正常.但是,当我创建实际的SelectList并传入时selectListItems,所有值都将丢失.我怎样才能保持这些价值不变?
foreach (SelectListItem item in selectListItems)
{
string tex = item.Text;
string val = item.Value;
string sel = item.Selected.ToString();
}
SelectList selectList = new SelectList(selectListItems);
foreach (SelectListItem slid in selectList)
{
string tex = slid.Text;
string val = slid.Value;
string sel = slid.Selected.ToString();
}
Run Code Online (Sandbox Code Playgroud) 我在ASP.NET MVC应用程序中有类似的内容:
IEnumerable<string> list = GetTheValues();
var selectList = new SelectList(list, "SelectedValue");
Run Code Online (Sandbox Code Playgroud)
甚至认为选定的值已定义,它在视图中未被选中.我有这种感觉,我在这里错过了一些东西,所以如果有人能把我的痛苦赶出去!
我知道我可以使用烦人的类型来提供密钥和值,但如果我不需要,我宁愿不添加额外的代码.
编辑:ASP.NET MVC RTM已修复此问题.
我有一个dropdownlistfor:
@Html.DropDownListFor(model => model.Item.Item.Status, new SelectList(@Model.AllStatus, "id", "Description"), new { id = "statusDropdown" })
@Html.ValidationMessageFor(model => model.Item.Item.Status)
Run Code Online (Sandbox Code Playgroud)
HTML输出:
<select id="statusDropdown" class="valid" name="Item.Item.Status" data-val-required="The Status field is required." data-val-number="The field Status must be a number." data-val="true">
<option value="2">Completed by Admin</option>
<option value="3">General Error</option>
<option value="4">New</option>
</select>
Run Code Online (Sandbox Code Playgroud)
如何更新此代码以设置默认选定选项?例如
<option value="4" selected>New</option>
我试过了:
@Html.DropDownListFor(model => model.Item.Item.Status, new SelectList(@Model.AllStatus, "id", "Description",@Model.SelectedStatusIndex), new { id = "statusDropdown" })
Run Code Online (Sandbox Code Playgroud)
@Model.SelectedStatusIndex 值为4,但不会将默认选项更改为"新建".
我也尝试过:
@Html.DropDownListFor(model => model.SelectedStatusIndex, new SelectList(@Model.AllStatus, "id", "Description"), new { id = "statusDropdown" …Run Code Online (Sandbox Code Playgroud) 我正在尝试理解c#ASP.NET MVC4并不断遇到SelectList.我似乎无法找到它的解释,除此之外:
http://msdn.microsoft.com/en-us/library/system.web.mvc.selectlist%28v=vs.108%29.aspx
任何人都可以给出一个简单的解释,并说明如何使用它?
这到底是什么?MVC3的DropDownList中是否存在某种错误?SelectedValue未显示为在标记中实际选择的内容.
我正在尝试不同的方法,没有任何作用.
public class SessionCategory
{
public int Id { get; set; }
public string Name { get; set; }
}
public static IEnumerable<SessionCategory> Categories
{
get
{
var _dal = new DataLayer();
return _dal.GetSesionCategories();
}
}
@{
var cats = Infrastructure.ViewModels.Session.Categories;
var sl = new SelectList(cats, "Id", "Name",2);
}
@Html.DropDownList("categories", sl);
Run Code Online (Sandbox Code Playgroud)