有没有办法将数据从 IQueryable 加载到 Combobox 中而无需循环?
基本上我有一个 IQueryable 数据,我希望将一个字符串(用于显示)和一个 int (用于选定的数据)绑定到组合框中,以便用户可以选择适当的选择。通常我只会创建组合框,然后循环遍历 IQueryable 将项目添加到组合框。但我突然想到,可能有一种方法可以在不循环的情况下做到这一点。
Basically I have an IQueryable of data that I wish to bind a string (for display) and an int (for data selected) into a combobox so the user can select the appropriate choice. Normally I would just create the combobox, and then loop through the IQueryable adding items to the combobox. But it occurred to me that there might be a way to do this without looping.
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(3)
将
ComboBox
DataSource
设置为该对象。set the
ComboBox
DataSource
to the object.您的意思是 Windows 窗体 ComboBox 吗?您可以使用 AddRange:
创建存储 ID 和名称的匿名对象。不过,仅使用原始对象并剪切 .Select 可能会更容易。
Do you mean a Windows Forms ComboBox? You could use AddRange:
to create anonymous objects storing the ID and name. It may be easier to just work with your original object, though, and cut out the .Select.
您指的是哪种技术(WPF、HTML、WinForms)?
WPF 的变体是:
我假设这个组合绑定到这样的模型:
但是,实际上我认为最好将您的项目控件绑定到 IList<>您可以使用 .ToList() 扩展方法来转换,而不是 IQueriable<>
Which technology do you mean (WPF, HTML, WinForms)?
Variant for WPF is:
<ComboBox ItemsSource="{Binding ItemsQueriable}"/>
I assume this combo is bound to model like this:
But, actually I think it is better to bind your items controls to IList<> instead of IQueriable<>, you can use .ToList() extension method to convert