使用 Linq2SQL 和 Linq2SQL 将空行添加到数据绑定列表框的最佳实践窗体
将空行(选择“无”)添加到列表框的最可靠的方法是什么?
到目前为止我使用过:
Dim List = Enumerable.Repeat(New TABLE With {.Text = "", .ID = -1}, 1).AsQueryable().Union(From t In mainctx.TABLEs)
ddlMangelKategorie.DisplayMember = "Text"
ddlMangelKategorie.ValueMember = "ID"
ddlMangelKategorie.DataSource = List.ToList
但这有一些缺点:
- 罗嗦
- 必须显式写入类型(在本例中为表),所以我无法将其包装在函数中
- 尚未找到解决方案,该解决方案适用于匿名类型
即如果我将 a 添加
From t In mainctx.TABLEs Select Text=col1, id=col2
到查询中,这个方法已经不行了。
谢谢
what is the most robust method for adding a empty row (to select "nothing") to a ListBox?
Sofar i used:
Dim List = Enumerable.Repeat(New TABLE With {.Text = "", .ID = -1}, 1).AsQueryable().Union(From t In mainctx.TABLEs)
ddlMangelKategorie.DisplayMember = "Text"
ddlMangelKategorie.ValueMember = "ID"
ddlMangelKategorie.DataSource = List.ToList
But this has some drawbacks:
- wordy
- must explicit write the Type (TABLE in this case), so i cant wrap this in a function
- have not found an solution, which works with anonymous types
I.e. if I add a
From t In mainctx.TABLEs Select Text=col1, id=col2
to the query, this method does not work anymore.
Thanks
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(1)
以下是我使用
Union
执行此操作的方法(请注意,您不需要Enumerable.Repeat
也不需要AsQueryable
)。对于匿名类型:
Here's how I would do it using
Union
(notice that you don't needEnumerable.Repeat
norAsQueryable
).With anonymous types: