我如何DataTable.Select()的结果绑定到ListBox控件? [英] How do I bind the result of DataTable.Select() to a ListBox control?
问题描述
我有以下的code:
ListBox.DataSource = DataSet.Tables("table_name").Select("some_criteria = match")
ListBox.DisplayMember = "name"
的<一个href="http://msdn.microsoft.com/en-us/library/system.data.datatable.select(VS.80).aspx"><$c$c>DataTable.Select()$c$c>方法返回数组<一href="http://msdn.microsoft.com/en-us/library/system.data.datarow(VS.80).aspx"><$c$c>System.Data.DataRow$c$c>对象。
The DataTable.Select()
method returns an array of System.Data.DataRow
objects.
无论我在 ListBox.DisplayMember
属性来指定,我看到的是与项目无不呈现为的正确数量的列表框系统.Data.DataRow
,而不是我想要的值,它是在名称
列!
No matter what I specify in the ListBox.DisplayMember
property, all I see is the ListBox with the correct number of items all showing as System.Data.DataRow
instead of the value I want which is in the "name"
column!
是否可以结合从 DataTable.Select结果数组()
,而不是通过其循环和增加每个人的的ListBox
?
Is it possible to bind to the resulting array from DataTable.Select()
, instead of looping through it and adding each one to the ListBox
?
(我已经与循环没有问题,但似乎没有一个优雅的结局!)
(I've no problem with looping, but doesn't seem an elegant ending!)
推荐答案
使用数据视图的吧。
ListBox.DataSource = new DataView(DataSet.Tables("table_name"), "some_criteria = match", "name", DataViewRowState.CurrentRows);
ListBox.DisplayMember = "name"
这篇关于我如何DataTable.Select()的结果绑定到ListBox控件?的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!