GridView自带的编辑更新,编辑实现了,我想知道我怎样能把更新的内容写完以后就保存在GridView上,此时不和数据库做交互,因为我再GridView外面还写了一个按钮,点击这个才和数据库做交互。
这个我的源代码
/// <summary>
        /// 编辑--更新事件
        /// </summary>
        protected void GridView_Data_RowUpdating(object sender, GridViewUpdateEventArgs e)
        {
            this.GridView_Data.EditIndex = -1;
            for (int i = 0; i < this.GridView_Data.Rows.Count; i++)
            {
                TextBox a = this.GridView_Data.Rows[i].FindControl("TextBox_PrivateLeave") as TextBox;
                Label b = this.GridView_Data.Rows[i].FindControl("Label_PrivateLeave") as Label;
                
                if (a != null)
                {
                    string s = a.Text;
                    b.Text = s.ToString();
                }
            }        }但是当b==null的时候, b.Text = s.ToString();这句话就没办法给b赋值了。我想指点怎么解决这个问题希望各位高手指点一下,谢了~

解决方案 »

  1.   

    判断b==null?不赋值:赋值。不想和数据库做交互,直接将读取出来的数据源修改下。
      

  2.   

    TextBox_PrivateLeave 
    Label_PrivateLeave设置编辑列,更新后在<ItemTemplate>里显示值
    通过隐藏域保存值。再重新绑定数据显示
      

  3.   

    写一个虚拟表,就是DataTable保存数据,然后存在ViewState里面,等你点你所谓的那个按纽的时候,
    在把数据表保存到数据里,明白我意思了没?
      

  4.   

    先从数据库读出数据,把数据单独存起来。gridview数据源就绑定存起来的数据.等你编辑完了,在更新数据库就好了!