I have 2 combobox
one loads shift
second loads Department
on the click of a button i written query based on that query it should display result. but it only works for first values of two combobox not for others. what is the problem
please help me
public void DisplayEmployee()
{
dtObj.Clear();
flowLayoutPanel1.Controls.Clear();
string s = CmbShiftdetails.Text;
string sql_displayemp = string.Format("SELECT EmployeeMaster.EmployeeId, EmployeeMaster.EmployeeCode, EmployeeMaster.EmployeeName, EmployeeMaster.Address, EmployeeMaster.PhoneNo, EmployeeMaster.Emailid, EmployeeMaster.Designation, EmployeeMaster.Photo, DepartmentMaster.DepartmentId, DepartmentMaster.DepartmentName, ShiftMaster.ShiftId, ShiftMaster.ShiftName FROM DepartmentMaster INNER JOIN EmployeeMaster ON DepartmentMaster.DepartmentId = EmployeeMaster.DepartmentId INNER JOIN ShiftMaster ON EmployeeMaster.ShiftId = ShiftMaster.ShiftId where ShiftMaster.ShiftName='{0}' and DepartmentMaster.DepartmentName='{1}'", CmbShiftdetails.Text, CmbDepartment.Text);
dtObj = obj.NonTransaction(sql_displayemp);
if (dtObj.Rows.Count > 0)
{
TableLayoutPanel tlpobj = new TableLayoutPanel();
tlpobj.Name = "Emp";
tlpobj.CellBorderStyle = TableLayoutPanelCellBorderStyle.OutsetDouble;
tlpobj.AutoSize = true;
string[] headers = { "EmployeeCode", "EmployeeName", "Address", "PhoneNo", "Emailid", "Designation", "Photo", "Edit", "Delete" };
for (int i = 0; i < headers.Length; i++)
{
Label lbl = new Label();
lbl.Text = headers[i];
tlpobj.Controls.Add(lbl, i, 0);
}
for (int i = 0; i < dtObj.Rows.Count; i++)
{
Button btnedit = new Button();
btnedit.Text = "Edit";
btnedit.Name = "e_" + dtObj.Rows[i]["EmployeeId"].ToString();
btnedit.Click += new EventHandler(btnedit_Click);
btnedit.Width = 60;
Button btndelete = new Button();
btndelete.Text = "Delete";
btndelete.Name = "d_" + dtObj.Rows[i]["EmployeeId"].ToString();
btndelete.Click += new EventHandler(btndelete_Click);
btndelete.Width = 60;
Label lblempid = new Label();
lblempid.Text = dtObj.Rows[i]["EmployeeId"].ToString();
lblempid.Name = "lblempid" + dtObj.Rows[i]["EmployeeId"].ToString();
lblempid.Visible = false;
Label lblempcode = new Label();
lblempcode.Text = dtObj.Rows[i]["EmployeeCode"].ToString();
lblempcode.Name = "lblempcode" + dtObj.Rows[i]["EmployeeId"].ToString();
Label lblempname = new Label();
lblempname.Text = dtObj.Rows[i]["EmployeeName"].ToString();
lblempname.Name = "lblempname" + dtObj.Rows[i]["EmployeeId"].ToString();
Label lbladdress = new Label();
lbladdress.Text = dtObj.Rows[i]["Address"].ToString();
lbladdress.Name = "lbladdress" + dtObj.Rows[i]["EmployeeId"].ToString();
Label lblphone = new Label();
lblphone.Text = dtObj.Rows[i]["PhoneNo"].ToString();
lblphone.Name = "lblphone" + dtObj.Rows[i]["EmployeeId"].ToString();
Label lblemail = new Label();
lblemail.Text = dtObj.Rows[i]["Emailid"].ToString();
lblemail.Name = "lblemail" + dtObj.Rows[i]["EmployeeId"].ToString();
Label lbldesignation = new Label();
lbldesignation.Text = dtObj.Rows[i]["Designation"].ToString();
lbldesignation.Name = "lbldesignation" + dtObj.Rows[i]["EmployeeId"].ToString();
PictureBox pbemp = new PictureBox();
pbemp.SizeMode = PictureBoxSizeMode.StretchImage;
try
{
pbemp.Image = Image.FromStream(new MemoryStream(((byte[])dtObj.Rows[i]["Photo"])));
}
catch { }
pbemp.Name = "pbemp" + dtObj.Rows[i]["EmployeeId"].ToString();
["EmployeeId"].ToString();
["EmployeeId"].ToString();
tlpobj.Controls.Add(lblempcode, 0, i + 1);
tlpobj.Controls.Add(lblempname, 1, i + 1);
tlpobj.Controls.Add(lbladdress, 2, i + 1);
tlpobj.Controls.Add(lblphone, 3, i + 1);
tlpobj.Controls.Add(lblemail, 4, i + 1);
tlpobj.Controls.Add(lbldesignation, 5, i + 1);
tlpobj.Controls.Add(pbemp, 6, i + 1);
tlpobj.Controls.Add(btnedit, 7, i + 1);
tlpobj.Controls.Add(btndelete, 8, i + 1);
}
flowLayoutPanel1.Controls.Add(tlpobj);
flowLayoutPanel1.Refresh();
}
private void BtnGo_Click(object sender, EventArgs e)
{
DisplayEmployee();
}