【发布时间】:2015-11-02 16:37:15
【问题描述】:
我在 winform 应用程序中有一个文本框和列表框。当我在文本框中输入值(即字符串)时,我希望列表框显示数据表中的值,当我从列表框中选择特定值时,它将显示在文本框中。
代码:
private void txtIName_TextChanged(object sender, EventArgs e)
{
string constring = "Data Source=.;Initial Catalog=Test;User Id=sa;Password=admin@123";
using (SqlConnection con = new SqlConnection(constring))
{
using (SqlCommand cmd = new SqlCommand("SELECT distinct * FROM Item_Details", con))
{
cmd.CommandType = CommandType.Text;
using (SqlDataAdapter sda = new SqlDataAdapter(cmd))
{
using (dt = new DataTable())
{
sda.Fill(dt);
DataView dv = new DataView(dt);
dv.RowFilter = string.Format("IName Like '%{0}%'", txtIName.Text);
listBox1.Visible = true;
listBox1.DataSource = dv;
}
}
}
}
}
但我在“system.data.datarow”之类的列表框中得到了输出。通过调试,我可以在 dataview 'dv' 中看到我想要的行。我在这里想念什么?谢谢。
【问题讨论】:
-
您必须将
listBox1.DisplayMember设置为您要查看的列名 -
在看到你的评论之前,我通过谷歌搜索得到了输出。但我不知道如何在列表框中的文本框中显示值。感谢您的努力。