【发布时间】:2017-01-18 11:34:32
【问题描述】:
我的员工视图表单中有三个类别,它们是:
1- 所有员工
2- 经理
3- 员工
每次我选择其中一个项目时,这三个类别都设置为组合框中的项目,它应该显示有关所选项目的数据......问题是数据网格视图不会清除其第一个数据以检索新的数据
我在构造函数中的代码用于显示所有员工
da = new SqlDataAdapter("select empId as ID,empName ,empAdd,empBdate,empPhone1,empPhone2,empEmail,empSSN,empQualf from emp", cn);
da.Fill(dt);
empViewdgv.DataSource=dt;
以及其他用于在选择组合框项时检索员工数据的代码
private void empViewcmbo_SelectedIndexChanged(object sender, EventArgs e)
{
if (empViewcmbo.SelectedIndex == 0)
{
empViewdgv.DataSource = null;
empViewdgv.Rows.Clear();
da = new SqlDataAdapter("select empId as ID,empName ,empAdd,empBdate,empPhone1,empPhone2,empEmail,empSSN,empQualf from emp", cn);
da.Fill(dt);
empViewdgv.DataSource = dt;
}
else if (empViewcmbo.SelectedIndex == 1)
{
empViewdgv.DataSource = null;
empViewdgv.Rows.Clear();
da = new SqlDataAdapter("select empId as ID,empName ,empAdd,empBdate,empPhone1,empPhone2,empEmail,empSSN,empQualf from emp where empPerm='Manager'", cn);
da.Fill(dt);
empViewdgv.DataSource = dt;
}
else if (empViewcmbo.SelectedIndex == 2)
{
empViewdgv.DataSource = null;
empViewdgv.Rows.Clear();
da = new SqlDataAdapter("select empId as ID,empName ,empAdd,empBdate,empPhone1,empPhone2,empEmail,empSSN,empQualf from emp where empPerm='Employee'", cn);
da.Fill(dt);
empViewdgv.DataSource = dt;
}
}
当我选择所有员工时,它应该显示所有员工,但如果我选择经理,它应该先清空 datagridview 中的数据,然后显示经理的数据,依此类推...
【问题讨论】:
-
你在哪里初始化
dt变量? -
@arman1991 我在构造函数之前声明并初始化了它
-
不清楚
dt和cn变量代表什么?请编辑您的问题并向我们展示整个解决方案。谢谢。
标签: c# sql-server winforms combobox