向ListBox添加空行(选择“nothing”)的最强大的方法是什么?
我使用的Sofar:
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
但这有一些缺点:
即。如果我添加
From t In mainctx.TABLEs Select Text=col1, id=col2
查询,此方法不再起作用。
由于
答案 0 :(得分:0)
以下是我使用Union
执行此操作的方法(请注意,您不需要Enumerable.Repeat
也不需要AsQueryable
)。
Dim emptyTable As New TABLE With {.Text = "", .ID = -1}
Dim list = {emptyTable}.Union(mainctx.TABLEs).ToList()
ddlMangelKategorie.DataSource = list
使用匿名类型:
Dim emptyTable = New With {.Text = "", .ID = -1}
Dim databaseTables = From t In mainctx.TABLEs
Select Text = t.col1, ID = t.col2
Dim list = {emptyTable}.Union(databaseTables).ToList()
ddlMangelKategorie.DataSource = list