各位大侠帮帮忙啊,我在GirdView下做了个搜索功能,想在搜索出来的行进行编辑,可是会跳转到首页编辑,这是为什么?困扰了我很久了!
前台代码
using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;
using System.Web.UI;
using System.Web.UI.WebControls;
using System.Data;
using Utility;
namespace WebShopBackground
{
public partial class revise_p : System.Web.UI.Page
{
protected void Page_Load(object sender, EventArgs e)
{
if (!IsPostBack)
{
GridViewBind();
}
}
protected void Bind()
{
GridView1.DataSource = BLL.WBp_detailsBLL.GetInfo();
GridView1.DataBind();
}
private void GridViewBind()
{
try
{
DataSet ds = BLL.WBp_detailsBLL.GetInfo();
this.GridView1.DataSource = ds;
GridView1.DataBind();
}
catch (Exception ex)
{
Response.Write("数据库错误,错误原因:" + ex.Message);
Response.End();
}
}
protected void GridView1_PageIndexChanging(object sender, GridViewPageEventArgs e)
{
GridView1.PageIndex = e.NewPageIndex;
Bind();
}
protected void GridView1_RowEditing(object sender, GridViewEditEventArgs e)
{
GridView1.EditIndex = e.NewEditIndex;
GridView1.DataBind();
Bind();
}
protected void GridView1_RowCancelingEdit(object sender, GridViewCancelEditEventArgs e)
{
GridView1.EditIndex = -1;
GridView1.DataBind();
Bind();
}
protected void GridView1_RowDeleting(object sender, GridViewDeleteEventArgs e)
{
int id = Convert.ToInt32((GridView1.Rows[e.RowIndex].FindControl("Label2") as Label).Text);
string strSql = "delete from product where pid="+id ;
try
{
SqlHelper.ExecuteNonQuery(SqlHelper.CONN_STRING, CommandType.Text, strSql);
GridView1.EditIndex = -1;
GridView1.DataBind();
Bind();
}
catch (Exception ex)
{
Page.ClientScript.RegisterClientScriptBlock(this.GetType(), "", "<script type='text/javascript'>alert('删除失败,请查找原因')</script>");
Response.End();
}
}
protected void GridView1_RowUpdating(object sender, GridViewUpdateEventArgs e)
{
//string id = GridView1.DataKeys[e.RowIndex].Values[1].ToString();
int id = Convert.ToInt32((GridView1.Rows[e.RowIndex].FindControl("Label2") as Label).Text);
string Name = ((TextBox)GridView1.Rows[e.RowIndex].FindControl("TextBox3")).Text;
string jieshao = ((TextBox)GridView1.Rows[e.RowIndex].FindControl("TextBox4")).Text;
string pingpai = ((TextBox)GridView1.Rows[e.RowIndex].FindControl("TextBox5")).Text;
string yuanjia = ((TextBox)GridView1.Rows[e.RowIndex].FindControl("TextBox6")).Text;
string zhegoujia = ((TextBox)GridView1.Rows[e.RowIndex].FindControl("TextBox7")).Text;
string shifouxinpin = ((TextBox)GridView1.Rows[e.RowIndex].FindControl("TextBox8")).Text;
string guige = ((TextBox)GridView1.Rows[e.RowIndex].FindControl("TextBox9")).Text;
string strSql = "update product set productname='" + Name + "',productintroduce='" + jieshao + "',productchu='" + pingpai + "',masterprice='" + yuanjia + "',hotprice='" + zhegoujia + "',newproduct='" + shifouxinpin + "',guige='" + guige + "' where pid=" + id;
try
{
SqlHelper.ExecuteNonQuery(SqlHelper.CONN_STRING, CommandType.Text, strSql);
Page.ClientScript.RegisterClientScriptBlock(this.GetType(), "", "<script type='text/javascript'>alert('更新成功')</script>");
GridView1.EditIndex = -1;
GridView1.DataBind();
Bind();
}
catch (Exception ex)
{
Page.ClientScript.RegisterClientScriptBlock(this.GetType(), "", "<script type='text/javascript'>alert('更新失败,请查找原因')</script>");
Response.End();
}
}
protected void Button1_Click(object sender, EventArgs e)
{
try
{
string bianhao = txtbianhao.Text;
DataSet ds = BLL.WBp_detailsBLL.Selectbianhao(bianhao);
GridView1.DataSource = ds;
GridView1.DataBind();
}
catch (Exception ex)
{
Response.Write("查询失败,请查找原因:" + ex.Message);
Response.End();
}
}
protected void Button3_Click(object sender, EventArgs e)
{
try
{
string mingcheng = txtmingcheng.Text;
DataSet ds = BLL.WBp_detailsBLL.Selectmingcheng(mingcheng);
GridView1.DataSource = ds;
GridView1.DataBind();
}
catch (Exception ex)
{
Response.Write("查询失败,请查找原因:" + ex.Message);
Response.End();
}
}
protected void GridView1_RowDataBound(object sender, GridViewRowEventArgs e)
{
//int i;
////执行循环,保证每条数据都可以更新
//for (i = 0; i < GridView1.Rows.Count; i++)
//{
// //首先判断是否是数据行
// if (e.Row.RowType == DataControlRowType.DataRow)
// {
// //当鼠标停留时更改背景色
// e.Row.Attributes.Add("onmouseover", "c=this.style.backgroundColor;this.style.backgroundColor='#00A9FF'");
// //当鼠标移开时还原背景色
// e.Row.Attributes.Add("onmouseout", "this.style.backgroundColor=c");
// }
//}
if (e.Row.RowType == DataControlRowType.DataRow)
{
//鼠标经过时,行背景色变
e.Row.Attributes.Add("onmouseover", "this.style.backgroundColor='#3399CC'");
//鼠标移出时,行背景色变
e.Row.Attributes.Add("onmouseout", "this.style.backgroundColor='#FFFFFF'");
}
}
}
}