C# 从 MDB 获取数据并将结果放入列表框中

标签 c# listbox

我有一个 .MDB 文件,其中有一个 n_groups 表和我需要引用的三列,即 NUID、strName 和 ntype。查询按预期工作,但是列表框只是显示为空,没有结果。

如何使结果填充列表框?

这是我到目前为止所拥有的:

var conn = new OleDbConnection("Provider=Microsoft.JET.OLEDB.4.0;" + 
    "data     source=C:\\menus\\newmenus\\menu.mdb;Jet " + 
    "OLEDB:Database Password=@#@#@#");

var ds = new DataSet();
var adapter = new OleDbDataAdapter(
    "SELECT nUID, strName FROM n_groups where ntype=1", conn);
conn.Open();
adapter.Fill(ds);
conn.Close();
var value = ds.Tables[0].Rows[0]["strName"].ToString();

listBox1.DataSource = value;

假设我想使用第二个列表框(如选项列表排序器)对列表进行重新排序,有没有办法调用列表框中项目的位置?

我需要能够将结果的内容从上到下重新排序以进行排序。

我打算使用这样的选项列表排序方法: demo picklist sorter

但我无法填充左侧列表。如何使用 C# 从 MDB 获取数据并将结果放入列表框中?

最佳答案

有一种更简单的方法可以做到这一点...而不是尝试这种方式

How can I make the results populate a listbox?

这是半伪代码:

dt DataTable
dt =  ds.Tables[0]
listbox1.datasource = dt
listbox1.datamember = "nameoffield"
listbox1.databind()

这基本上获取整个数据表并将其绑定(bind)到控件。您可以使用 .SelectedIndex.SelectedItem

引用每个对象

我认为您想要寻找的是:

在add的点击事件中:

listbox2.items.add(listbox1.selecteditem)

在remove的点击事件中

listbox2.items.removeat(listbox2.selectedindex)

关于C# 从 MDB 获取数据并将结果放入列表框中,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17584975/

相关文章:

c# - 不断从 ProtectedBrowserStorage 获取 "The payload was invalid"异常

c# - 冒泡排序最坏的例子是 O(n*n),怎么样?

c# - WPF - 扩展器中的滚动列表框

delphi - tListBox 使用来自其他 ListBox 的自动完成导航

c# - 使用 C# 自定义 WPF 列表框

wpf - 如何通过单击按钮将列表框中的项目添加到列表而不需要任何代码隐藏?

c# - 我无法使用 wpf 设置 Web 文本框值

c# - 已排序枚举的 N 路交集

vb.net - 从列表中进行选择的最佳方法 - 这两个列表框是不是有点过时了?

c# - 我应该如何删除 DbSet 中的所有元素?