【发布时间】:2015-07-05 16:01:12
【问题描述】:
尝试了几组代码来从 SQL Server 中的表中填充组合框,但无济于事!组合框位于 WindowsApplicationForm 中。这是我正在使用的代码
public void BindData1()
{
myConnection prms = new myConnection();
using (SqlConnection con = prms.GetConnection())
{
string query = "select CountryName from Countries";
SqlCommand cmd = new SqlCommand(query, con);
SqlDataAdapter d = new SqlDataAdapter(query, con);
DataSet dt = new DataSet();
d.Fill(dt);
comboBox1.DataSource = dt.Tables[0];
comboBox1.DisplayMember = "CountryName";
}
}
该方法在表单加载事件中被调用,但在运行时组合框中没有值。
【问题讨论】:
-
我没有看到打开连接。是不是必需的?
-
对连接字符串使用一个类并打开连接,并创建一个实例
-
您已经验证了数据是否进入了数据集中?在 d.Fill(dt) 行中放置一个断点并查看它。
-
@Nimesh 不,DataAdapter 会在关闭时打开并关闭它
-
@newuser 您的代码应该按原样工作,但是,您是否使用快捷方式 |DataDirectory|在你的连接字符串中?如果是,则快捷方式指向的数据库中可能没有数据。
标签: c# winforms visual-studio combobox