C# 在C中从SQL填充组合框#
我试图从sql填充我的组合框,但当我为其分配值成员时,它会给我以下错误C# 在C中从SQL填充组合框#,c#,combobox,C#,Combobox,我试图从sql填充我的组合框,但当我为其分配值成员时,它会给我以下错误 cannot explicitly convert int into string 你能帮我理解并改正我的错误吗 void Fillcombo() { string query_select = "SELECT * FROM department"; DataTable dt = DataAccess.selectData(query_select); Sql
cannot explicitly convert int into string
你能帮我理解并改正我的错误吗
void Fillcombo()
{
string query_select = "SELECT * FROM department";
DataTable dt = DataAccess.selectData(query_select);
SqlDataReader dr = DataAccess.selectDataReader(query_select);
while (dr.Read())
{
string dpt_name = dr.GetString(1);
int dpt_id = (int)dr.GetValue(0);
comboBox1.DataSource = dt;
comboBox1.ValueMember = dpt_id; // error here
comboBox1.DisplayMember = dpt_name;
}
}
您必须将
DataSource
(DataTable
)中列的名称指定给ValueMenmber
和DisplayMember
作为字符串,并且不需要使用while循环,如下所示:
void Fillcombo()
{
string query_select = "SELECT * FROM department";
DataTable dt = DataAccess.selectData(query_select);
comboBox1.DataSource = dt;
comboBox1.ValueMember = "ColumnName_DepartmentID";
comboBox1.DisplayMember = "ColumnName_DepartmentName";
}
您应该以字符串格式编写:
comboBox1.ValueMember = "dpt_id";
您不需要使用while循环式答案。很高兴听到这个!也谢谢你:)