我想如何将数据添加到datatable中并更改" Date"的dataformatString。柱
Q1。如何将数据格式更改为" dd / MM / yyyy"或使用您的方法显示,
Q2。我已经在page_load事件中添加了添加数据键的代码:[" RowID"],但是当我点击"编辑"按钮,它提示"对象引用未设置为对象的实例",如何获取datakey值/添加commandArguement到"编辑" /"删除"按钮
Q3。当我点击"编辑"按钮,如何更改为编辑模式,更新,取消按钮等进行编辑,
我希望有人可以帮助我,非常感谢你!!!
评论:"编辑&删除按钮添加在.aspx中,而非动态"
的.cs
protected void Page_Load(object sender, EventArgs e){
if (!IsPostBack) {
GridView gv = (GridView)Page.FindControl("GridView1");
gv.DataKeyNames = new string[] { "RowID" };
}
}
protected void btn_Click(object sender, EventArgs e){
getDT(date); //string []date;
}
private DataTable getDT(string[] date){
DataTable dt = new DataTable();
dt.Columns.Add("RowID", typeof(Int16));
dt.Columns.Add("Date", typeof(DateTime));
for (int i = 0; i < date.Length; i++) {
dt.Rows.Add(i + 1, date[i]); //date[i] format:yyyy-mm-dd or dd/MM/yyyy
}
return dt;
}
protected void GridView1_RowCommand(object sender, GridViewCommandEventArgs e) {
if (e.CommandName == "Delete"){
hf_id.Value = GridView1.DataKeys[0].Value.ToString();
}
}
答案 0 :(得分:2)
从指定链接下载源代码并研究它将对您有所帮助。您的要求很简单,但是必须具备基本知识。
http://www.codeproject.com/Articles/23471/Editable-GridView-in-ASP-NET
答案 1 :(得分:0)
这是正确的..但我想成为这个没有使用数据库..我做了一切..现在我想要 如果我单击单元格,以便数据在gv中更新,但它没有显示datatable ..所以我想采取刷新按钮.. 如果我点击这个,那么数据应该在数据表上更新.. 我发送这样的代码......
设计页面
代码---
protected void Page_Load(object sender, EventArgs e){
if (!this.IsPostBack) {
DataTable dt = new DataTable();
dt.Columns.AddRange(new DataColumn[3] { new DataColumn("Id"), new DataColumn("Name"), new DataColumn("City") });
dt.Rows.Add(1, "Anamika", "Bangalore");
dt.Rows.Add(2, "Sunny", "Chennai");
dt.Rows.Add(3, "Monika", "Bangalore");
dt.Rows.Add(4, "Jyoti", "Chennai");
dt.Rows.Add(5, "Radhika", "Jabalpur");
dt.Rows.Add(6, "Imran", "Jammu");
dt.Rows.Add(7, "Alok", "Delhi");
dt.Rows.Add(8, "Amit", "Shamshabad");
dt.Rows.Add(9, "Neetu", "Bhopal");
dt.Rows.Add(10, "Jyoti", "Chennai");
dt.Rows.Add(11, "Radhika", "Vidisha");
dt.Rows.Add(10, "Pooja", "Pune");
gridview1.DataSource = dt;
gridview1.DataBind();
}
}
protected void gridview1_OnRowDataBound(object sender, GridViewRowEventArgs e) {
if (e.Row.RowType == DataControlRowType.DataRow) {
for (int i = 0; i < e.Row.Cells.Count; i++) {
TextBox txt = new TextBox();
txt.Text = e.Row.Cells[i].Text;
e.Row.Cells[i].Text = "";
e.Row.Cells[i].Controls.Add(txt);
}
}
}
}