using TestWeb.HR.BusinessLogicLayer; using TestWeb.HR.DataAccessLayer; public partial class HR_CompanyView : System.Web.UI.UserControl ... { protected void Page_Load(object sender, EventArgs e) ...{ if (!this.IsPostBack) ...{ GetAllCompanies(); //初试加载所有公司 }} /**//// <summary> /// 返回所有公司 /// </summary> private void GetAllCompanies() ...{ try ...{ List<Company> companyList = new List<Company>(); companyList = Company.GetAllCompanies(); if (companyList != null) ...{ this.GridView1.DataSource = companyList; this.GridView1.DataBind(); } } catch (Exception ex) ...{ ShowMessage.ErrorMessage(this.Page, ex.Message); } } /**//// <summary> /// 编辑公司 /// </summary> /// <param name="sender"></param> /// <param name="e"></param> protected void GridView1_RowEditing(object sender, GridViewEditEventArgs e) ...{ this.GridView1.EditIndex = e.NewEditIndex; GetAllCompanies(); } /**//// <summary> /// 取消编辑 /// </summary> /// <param name="sender"></param> /// <param name="e"></param> protected void GridView1_RowCancelingEdit(object sender, GridViewCancelEditEventArgs e) ...{ this.GridView1.EditIndex = -1; GetAllCompanies(); } /**//// <summary> /// 更新公司 /// </summary> /// <param name="sender"></param> /// <param name="e"></param> protected void GridView1_RowUpdating(object sender, GridViewUpdateEventArgs e) ...{ GridViewRow uprow = this.GridView1.Rows[e.RowIndex]; TextBox text1 = (TextBox)uprow.Cells[0].FindControl("TextBox1"); TextBox text2 = (TextBox)uprow.Cells[0].FindControl("TextBox2"); TextBox text3 = (TextBox)uprow.Cells[0].FindControl("TextBox3"); HyperLink hlk = (HyperLink)uprow.Cells[0].FindControl("HyperLink1"); int companyId = Convert.ToInt32(this.GridView1.DataKeys[e.RowIndex].Value); //直接调用存储过程进行更新 string connectionstring = ConfigurationManager.ConnectionStrings["TESTDB_Database_Connection"].ConnectionString; SqlCommand upcmd = new SqlCommand(); upcmd.CommandType = CommandType.StoredProcedure; upcmd.CommandText = "UPCompany"; upcmd.Parameters.Add("@CompanyName", SqlDbType.VarChar, 50); upcmd.Parameters["@CompanyName"].Value = text1.Text.Trim(); upcmd.Parameters.Add("@Phone", SqlDbType.VarChar, 50); upcmd.Parameters["@Phone"].Value = text2.Text.Trim(); upcmd.Parameters.Add("@Fax", SqlDbType.VarChar, 50); upcmd.Parameters["@Fax"].Value = text3.Text.Trim(); upcmd.Parameters.Add("@WebSite", SqlDbType.VarChar, 50); upcmd.Parameters["@WebSite"].Value = hlk.Text.Trim(); upcmd.Parameters.Add("@CompanyId", SqlDbType.Int, 4); upcmd.Parameters["@CompanyId"].Value = companyId; SqlConnection con = new SqlConnection(connectionstring); upcmd.Connection = con; con.Open(); upcmd.ExecuteNonQuery(); con.Close(); this.GridView1.EditIndex = -1; GetAllCompanies(); } /**//// <summary> /// 删除公司 /// </summary> /// <param name="sender"></param> /// <param name="e"></param> protected void GridView1_RowDeleting(object sender, GridViewDeleteEventArgs e) ...{ int companyId = Convert.ToInt32(this.GridView1.DataKeys[e.RowIndex].Value); string connectionstring = ConfigurationManager.ConnectionStrings["TESTDB_Database_Connection"].ConnectionString; SqlCommand delcmd = new SqlCommand(); delcmd.CommandType = CommandType.StoredProcedure; delcmd.CommandText = "HR_DeleteCompanyByCompanyId"; delcmd.Parameters.Add("@CompanyId", SqlDbType.Int, 4); delcmd.Parameters["@CompanyId"].Value = companyId; SqlConnection _Con = new SqlConnection(connectionstring); delcmd.Connection = _Con; _Con.Open(); delcmd.ExecuteNonQuery(); _Con.Close(); GetAllCompanies(); } /**//// <summary> /// 允许分页 /// </summary> /// <param name="sender"></param> /// <param name="e"></param> protected void GridView1_PageIndexChanging(object sender, GridViewPageEventArgs e) ...{ this.GridView1.PageIndex = e.NewPageIndex; GetAllCompanies(); } /**//// <summary> /// 焦点行颜色变化 /// </summary> /// <param name="sender"></param> /// <param name="e"></param> protected void GridView1_RowDataBound(object sender, GridViewRowEventArgs e) ...{ if (e.Row.RowType == DataControlRowType.DataRow) ...{ //当鼠标放上去的时候 先保存当前行的背景颜色 并给附一颜色 e.Row.Attributes.Add("onmouseover", "currentcolor=this.style.backgroundColor;this.style.backgroundColor='yellow',this.style.fontWeight='';"); //当鼠标离开的时候 将背景颜色还原的以前的颜色 e.Row.Attributes.Add("onmouseout", "this.style.backgroundColor=currentcolor,this.style.fontWeight='';"); } //单击行改变行背景颜色 if (e.Row.RowType == DataControlRowType.DataRow) ...{ e.Row.Attributes.Add("onclick", "this.style.backgroundColor='#99cc00'; this.style.color='buttontext';this.style.cursor='default';"); } } /**//// <summary> /// 根据ID获取公司详细信息 /// </summary> /// <param name="sender"></param> /// <param name="e"></param> protected void Button1_Click(object sender, EventArgs e) ...{ Response.Redirect("~/CompanyDetails.aspx"); } }