GridView RowUpdating.
Jeg har et gridview hvor EditEnabled er enabled. Jeg har binded en simpel liste til kontrollen, og tilføjet RowUpdating så jeg kan editere i min liste. Men problemet er at NewValues er tom. Jeg læste mig så frem til man skulle have fat i de textboxe kontrollen selv genere, men der er Text property på kontrol den gamle værdi. Hvordan tilføjer jeg RowUpdating på en GridView?using System;
using System.Configuration;
using System.Data;
using System.Linq;
using System.Web;
using System.Web.Security;
using System.Web.UI;
using System.Web.UI.HtmlControls;
using System.Web.UI.WebControls;
using System.Web.UI.WebControls.WebParts;
using System.Xml.Linq;
public partial class _Default : System.Web.UI.Page
{
System.Collections.Generic.List<Val> list = new System.Collections.Generic.List<Val>();
protected void Page_Load(object sender, EventArgs e)
{
Val val1 = new Val();
val1.Col1 = "Ijiooo";
val1.Col2 = "Ijiooo";
Val val2 = new Val();
val2.Col1 = "Ijiooo";
val2.Col2 = "Ijiooo";
list.Add(val1);
list.Add(val2);
GridView1.DataSource = list;
GridView1.DataBind();
}
public enum En { Test1, Test2, Test3 };
public class Val
{
string[] arr = { "1", "2", "3" };
En _en = En.Test1;
public En En
{
get { return _en; }
set { _en = value; }
}
public string[] Arr
{
get { return arr; }
set { arr = value; }
}
string _Col1 = string.Empty;
bool True = false;
public bool True1
{
get { return True; }
set { True = value; }
}
public string Col1
{
get { return _Col1; }
set { _Col1 = value; }
}
string _Col2 = string.Empty;
public string Col2
{
get { return _Col2; }
set { _Col2 = value; }
}
}
protected void GridView1_RowEditing(object sender, GridViewEditEventArgs e)
{
GridView1.EditIndex = e.NewEditIndex;
GridView1.DataBind();
//String country = GridView1.Rows[e.NewEditIndex].Cells[1].Text;
}
protected void GridView1_RowUpdating(object sender, GridViewUpdateEventArgs e)
{
TextBox tb1 = (TextBox)GridView1.Rows[e.RowIndex].Cells[2].Controls[0];
TextBox tb2 = (TextBox)GridView1.Rows[e.RowIndex].Cells[3].Controls[0];
list[e.RowIndex].Col1 = tb1.Text;
list[e.RowIndex].Col2 = tb2.Text;
GridView1.DataSource = list;
GridView1.DataBind();
}
}