Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/csharp/285.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# 从SelectList的Viewdata到HTML.Listbox(不带multiselect选项)获取数据_C#_Asp.net Mvc_Razor_Html Helper - Fatal编程技术网

C# 从SelectList的Viewdata到HTML.Listbox(不带multiselect选项)获取数据

C# 从SelectList的Viewdata到HTML.Listbox(不带multiselect选项)获取数据,c#,asp.net-mvc,razor,html-helper,C#,Asp.net Mvc,Razor,Html Helper,我正在将selectlist数据从控制器传递到viewdata中的视图。现在我想将viewdata selectlist分配给@HTML.Listbox。我想要一个大小为4的列表,但用户一次只能选择一个项目。我知道多选的代码,但不知道单选的代码 多选的代码: 控制器: ViewData["ddlList"] = new SelectList(ROIDL.GetDataList(), "List_Val", "List_Text"); html: 您可以尝试类似的方法,您需要一个IEnumera

我正在将selectlist数据从控制器传递到viewdata中的视图。现在我想将viewdata selectlist分配给@HTML.Listbox。我想要一个大小为4的列表,但用户一次只能选择一个项目。我知道多选的代码,但不知道单选的代码

多选的代码: 控制器:

ViewData["ddlList"] = new SelectList(ROIDL.GetDataList(), "List_Val", "List_Text");
html:


您可以尝试类似的方法,您需要一个
IEnumerable

ViewData[“ddlist”]=ROIDL.GetDataList().Select(e=>newselectListItem())
{
值=e.List_Val,
Text=e.List\u Text
}).ToList();
@ListBox(“ddlMCL”,(IEnumerable)ViewData[“ddlMCL”])

为什么不通过模型传递数据?你对此有什么限制吗?@RubéndelaFuente是的。这就是我将数据导入viewdata的原因。作为multiselectlist,它工作得很好。这就是你要找的:@AmarDuplantier,是的,是这种类型,但是使用html.listbox html helper。照那篇文章说的做。请尝试使用帮助程序设置列表框的大小属性。@Html.listbox(“ddlMCL”,ViewData[“ddlMCL”])出现错误
@Html.ListBox("ddlMCL", ViewData["ddlMCL"] as MultiSelectList)
ViewData["ddlList"] = ROIDL.GetDataList().Select(e => new SelectListItem()
                                        {
                                            Value = e.List_Val,
                                            Text = e.List_Text
                                        }).ToList();


@Html.ListBox("ddlMCL",  (IEnumerable<SelectListItem>) ViewData["ddlMCL"])