我如何DataTable.Select()的结果绑定到ListBox控件? [英] How do I bind the result of DataTable.Select() to a ListBox control?

查看:205
本文介绍了我如何DataTable.Select()的结果绑定到ListBox控件?的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我有以下的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()方法返回数组<一href="http://msdn.microsoft.com/en-us/library/system.data.datarow(VS.80).aspx"><$c$c>System.Data.DataRow对象。

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屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆