我有一个.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;
假设我想使用第二个列表框(如选项列表分类器)对列表重新排序有没有办法在列表框中调用项目的位置?
我需要能够从上到下重新排序结果的内容以进行排序。
我打算使用这样的选项列表排序方法:
但我无法让左侧列表填充。如何使用C#从MDB获取数据并将结果放入列表框?
答案 0 :(得分:2)
有一种更简单的方法可以做到这一点......而是以这种方式尝试
How can I make the results populate a listbox?
这是半伪代码:
dt DataTable
dt = ds.Tables[0]
listbox1.datasource = dt
listbox1.datamember = "nameoffield"
listbox1.databind()
这基本上取整个数据表并将其绑定到控件。您可以使用.SelectedIndex
或.SelectedItem
我认为你想要寻找的是:
在点击事件中添加:
listbox2.items.add(listbox1.selecteditem)
在删除的点击事件
中listbox2.items.removeat(listbox2.selectedindex)