问个GridView改变列值的问题
protected void Page_Load(object sender, EventArgs e)
     {
         try
         {
             string sql = "select SurveyID,SurveyDate,SurveyProject,SurveyCPI,SurveyLength,SurveyMemo,SurveyStatus from survey";
             con = new SqlConnection(connstr);
             con.Open();
             SqlCommand com = new SqlCommand(sql, con);
             SqlDataReader read = com.ExecuteReader();
             while (read.Read())
             {
                 SurveyID = read["SurveyID"].ToString();
                 SurveyDate = read["SurveyDate"].ToString();
                 SurveyProject = read["SurveyProject"].ToString();
                 SurveyCPI = read["SurveyCPI"].ToString();
                 SurveyLength = read["SurveyLength"].ToString();
                 SurveyMemo = read["SurveyMemo"].ToString();
                 SurveyStatus = read["SurveyStatus"].ToString();
                 string sql1 = "select * from surveylog where Username='wangyi1687' and SurveyID='" + SurveyID + "'";
                 con = new SqlConnection(connstr);
                 con.Open();
                 SqlCommand com1 = new SqlCommand(sql1, con);
                 SqlDataReader reader = com1.ExecuteReader();
                 if (reader.Read())
                 {
                     SurveyStatus2 = reader["SurveyStatus"].ToString();             
                     con = new SqlConnection(connstr);
                     string sql2 = "select * from survey where SurveyID='" + SurveyID + "'";
                     //创建SqlDataAdapter对象,调用sql
                     SqlDataAdapter myadapter = new SqlDataAdapter(sql2, con);
                     //创建并填充DataSet
                     myadapter.Fill(ds);
                     GridView1.DataSource = ds;
                     GridView1.DataBind();
                     con.Close();
                 }
             }
         }
         catch (Exception ex)
         {
             ex.ToString();
         }
     }
     protected void GridView1_RowDataBound(object sender, GridViewRowEventArgs e)
     {
         if (e.Row.RowType == DataControlRowType.DataRow)
         {
             if (SurveyStatus2 == "有效")
             {
                 e.Row.Cells[6].Text = "<a href=CategoryInfoInfo.aspx?SurveyID=" + SurveyID + ">有效</a>";
             }
             else
             {
                 e.Row.Cells[6].Text = SurveyStatus2;
             }
         }
     }
现在的问题是,如果判断出来的SurveyStatus2是有效,那么就把另外的那条数据给覆盖了,而且RowDataBound事件里执行了2次if (SurveyStatus2 == "有效")
------解决方案--------------------你现在的数据是否有两天记录?
GridView1_RowDataBound事件是每次绑定行的时候都会触发的
------解决方案--------------------页面装载事件表明,每回调一次,就重新绑定业次,如果你在表格上进行操作,那肯定要回调一次再执行对应的事件一次,加起来应是二次
------解决方案--------------------是不是要调整这个列的宽度啊。
GridView1_RowDataBound 每行会进一次。
------解决方案--------------------那么就把另外的那条数据给覆盖了
---------------------------------------
另外的那條數據是什么數據?聽不明白。
------解决方案--------------------支持一下