关于combobox的问题,解决不了
我的程序中使用了三个ComboBox,cmb1显示类别,cmb2显示部门,cmb3显示用户。代码如下:
private void cmb1_SelectedIndexChanged(object sender, EventArgs e)
{
string strCmd = "Select DepartmentID,Department from Departments where category=" + cmb1.SelectedText;
BindDepartmentList(strCmd);
}
private void BindDepartmentList(string strCmd)
{
using (SqlConnection con = new SqlConnection(strServerDB))
{
SqlDataAdapter adp = new SqlDataAdapter(strCmd, con);
DataSet ds = new DataSet();
adp.Fill(ds, "Departments");
cmb2.DataSource = ds.Tables["Departments"].DefaultView;
cmb2.DisplayMember = "Department";
cmb2.ValueMember = "DepartmentID";
cmb2.SelectedIndex = -1;
}
}
private void cmb2_SelectedValueChanged(object sender, EventArgs e)
{
if (cmb2.SelectedIndex != -1)
{
int iDepartmentID = Convert.ToInt32(cmb2.SelectedValue.ToString());
......
}
}
程序运行时,只要改变了cmb1的选择,就会出错。调试了一下,发现代码执行到
cmb2.DataSource = ds.Tables["Departments"].DefaultView;
时,触发cmb2_SelectedValueChanged事件,在该事件中运行了
int iDepartmentID = Convert.ToInt32(cmb2.SelectedValue.ToString());后提示“输入字符串的格式不正确”,检查cmb2.SelectedValue.ToString()表达式的值为System.Data.DataRowView。
不知道该怎么解决?
private void cmb1_SelectedIndexChanged(object sender, EventArgs e)
{
string strCmd = "Select DepartmentID,Department from Departments where category=" + cmb1.SelectedText;
BindDepartmentList(strCmd);
}
private void BindDepartmentList(string strCmd)
{
using (SqlConnection con = new SqlConnection(strServerDB))
{
SqlDataAdapter adp = new SqlDataAdapter(strCmd, con);
DataSet ds = new DataSet();
adp.Fill(ds, "Departments");
cmb2.DataSource = ds.Tables["Departments"].DefaultView;
cmb2.DisplayMember = "Department";
cmb2.ValueMember = "DepartmentID";
cmb2.SelectedIndex = -1;
}
}
private void cmb2_SelectedValueChanged(object sender, EventArgs e)
{
if (cmb2.SelectedIndex != -1)
{
int iDepartmentID = Convert.ToInt32(cmb2.SelectedValue.ToString());
......
}
}
程序运行时,只要改变了cmb1的选择,就会出错。调试了一下,发现代码执行到
cmb2.DataSource = ds.Tables["Departments"].DefaultView;
时,触发cmb2_SelectedValueChanged事件,在该事件中运行了
int iDepartmentID = Convert.ToInt32(cmb2.SelectedValue.ToString());后提示“输入字符串的格式不正确”,检查cmb2.SelectedValue.ToString()表达式的值为System.Data.DataRowView。
不知道该怎么解决?
...全文
相关推荐
easyui datagrid 行编辑中combogrid和combobox显示问题
修改上一个资源版本中结束编辑时combobox显示问题. 1、类型为combogrid时每行的参数不同查询返回对应的数据结果。 2、类型为combobox时,输入框显示图标按钮,实现对应的事件。 3、解决类型为combobox显示为value而不是text问题
解决combobox随窗口变化大小后不显示下拉列表问题
解决combobox随窗口变化大小后不显示下拉列表问题
Extjs EditorGridPanel中ComboBox列的显示问题
EditorGridPanel中嵌入ComboBox通常不会正常显示ComboBox的store中本想显示字段,而是显示的EditorGridPanel中 store的dataindex指定的字段内容。
ComboBox列问题代码
在DataGrid里面绑定ComboBox列时无法在编辑模板下默认选中一个备选值的一种解决方法的示例代码。
C#DataGridView中ComboBox下拉更改事件
C#DataGridView单元格中ComboBox下拉更改事件


