Hello Team,
I want to Edit Unbound GridView - which will altimatly save changes to my DataBase.
I have below code which is working perfectly fine.
But Problem is for
BU_Code
,
DM_Code
and
Emp_Role
I want DropDownList in my UnBound GridView.
Please Help how I can do this with UnBound GridView.
private System.Data.DataTable Populate_GridView()
{
string qry = "SELECT tbl_Emp_Master.Emp_ID, tbl_Emp_Master.Emp_Name, tbl_Emp_Master.Login_ID, tbl_Emp_Master.BU_Code, tbl_Emp_Master.DM_Code, " +
" tbl_Emp_Master.Emp_Role, tbl_Emp_Role.[Role_Desc], tbl_BU.BU_Name, tbl_DM.DM_Name " +
" FROM tbl_DM INNER JOIN " +
" tbl_BU ON tbl_DM.BU_Code = tbl_BU.BU_Code INNER JOIN " +
" tbl_Emp_Master INNER JOIN " +
" tbl_Emp_Role ON tbl_Emp_Master.Emp_Role = tbl_Emp_Role.Emp_Role ON tbl_DM.DM_Code = tbl_Emp_Master.DM_Code AND " +
" tbl_BU.BU_Code = tbl_Emp_Master.BU_Code";
SqlCon.Open();
SqlDataAdapter adp = new SqlDataAdapter(qry, SqlCon);
System.Data.DataTable dt = new System.Data.DataTable();
System.Data.DataRow dr = dt.NewRow();
dt.Rows.InsertAt(dr, 0);
adp.Fill(dt);
SqlCon.Close();
return dt;
}
private void View_Table()
{
System.Data.DataTable dt = Populate_GridView();
GridView1.DataSource = dt;
GridView1.EditIndex = -1;
GridView1.DataBind();
((LinkButton)GridView1.Rows[0].Cells[0].Controls[0]).Text = "Insert";
}
protected void GridView1_RowUpdating(object sender, GridViewUpdateEventArgs e)
{
SqlCommand cmd = new SqlCommand();
cmd.CommandText = "UPDATE tbl_Emp_Master SET Emp_ID= '" + e.NewValues[0].ToString() + "', Emp_Name ='" + e.NewValues[1].ToString() + "', Login_ID='" + e.NewValues[2].ToString() + "', BU_Code='" + e.NewValues[3].ToString() + "', DM_Code='" + e.NewValues[4].ToString() + "', Emp_Role='" + e.NewValues[5].ToString() + "' " +
"WHERE Emp_ID= '" + e.NewValues[0].ToString() + "'";
cmd.Connection = SqlCon;
SqlCon.Open();
cmd.ExecuteNonQuery();
SqlCon.Close();
View_Table();
}
protected void GridView1_RowEditing(object sender, GridViewEditEventArgs e)
{
System.Data.DataTable dt = Populate_GridView();
GridView1.DataSource = dt;
GridView1.EditIndex = e.NewEditIndex;
GridView1.DataBind();
((LinkButton)GridView1.Rows[0].Cells[0].Controls[0]).Text = "Insert";
}
protected void GridView1_RowCancelingEdit(object sender, GridViewCancelEditEventArgs e)
{
View_Table();
}