我正在尝试将一个空的ListBox添加到我的Razor视图页面来存储运行时值。但它给了我一条错误信息There is no ViewData item of type 'IEnumerable<SelectListItem>' that has the key 'myListBox'
。我知道有这样的viewdata。但是,当我使用文本框执行相同操作时,它可以正常工作。
@Html.TextBox("myTextBox")//works alright, displays a textbox
@Html.ListBox("myListBox") // gives error
如何显示空列表框以及为什么上述方法适用于文本框但适用于列表框?
答案 0 :(得分:5)
刚刚找到一个解决方法,通过传递一个空的SelectList
来创建一个空的ListBox,但仍然想知道为什么原来的那个不起作用。
@Html.ListBox("myListBox", new SelectList(new[] {""}));