gridview RowUpdating的问题

twtetg 2008-11-21 10:56:00

//页面加载
protected void Page_Load(object sender, EventArgs e)
{
if(!IsPostBack)
DateBind();
if (this.gridview1.SelectedIndex > -1)
// Call UpdateRow on every postback
this.GVLocalization.UpdateRow(this.GVLocalization.SelectedIndex, false);
}
//gridview绑定
private void DateBind()
{
string filepath = HttpContext.Current.Server.MapPath("/XXX.xml");
DataSet ds = new DataSet();
ds.ReadXml(filepath);
this.gridview1.DataSource = ds.Tables[0];
this.gridview1.DataBind();

}
protected void gridview1_RowUpdating(object sender, GridViewUpdateEventArgs e)
{
//更新选中行的记录到XML文件
string name = ((TextBox)GVLocalization.Rows[e.RowIndex].Cells[0].Controls[0]).Text.ToString();
string value = ((TextBox)GVLocalization.Rows[e.RowIndex].Cells[1].Controls[0]).Text.ToString();
bool enable = ((CheckBox)GVLocalization.Rows[e.RowIndex].Cells[2].Controls[0]).Checked;


GridViewRow row = gridview1.Rows[e.RowIndex];
string filepath = HttpContext.Current.Server.MapPath(@"/XXX.xml");

DataSet ds = new DataSet();
ds.ReadXml(filepath);
DataRow dr = ds.Tables[0].Rows[row.DataItemIndex];

dr["name"] = name;
dr["value"] = value;
dr["enable"] = enable;

ds.WriteXml(filepath);


GVLocalization.EditIndex = -1;
DataBind();//此方法为什么不执行?

问题是更新成功了,更改的字段已经写入xml文件,但页面gridview不显示了,不知道问题出在哪里?调试RowUpdating()里面的DataBind();直接跳过不执行,不懂什么原因
...全文
204 17 打赏 收藏 转发到动态 举报
写回复
用AI写文章
17 条回复
切换为时间正序
请发表友善的回复…
发表回复
MariceQin 2008-12-03
  • 打赏
  • 举报
回复
DataBind()是關鍵方法,用來作方法名可能有沖突,能插入數據算你好運,把DateBind() 的名字隨便改一下應該就可以了
mengxj85 2008-11-21
  • 打赏
  • 举报
回复
书写错误了,呵呵,有点粗心了
DataBind();//此方法为什么不执行?
DateBind()
后浪 2008-11-21
  • 打赏
  • 举报
回复
[Quote=引用 6 楼 zhong2006 的回复:]
DataBind();//此方法为什么不执行?


DateBind();写错字母鸟鸟!!!
[/Quote]
方法名自定义。
bosnma 2008-11-21
  • 打赏
  • 举报
回复
DataBind()是页面级的绑定,相当于调用Page.DataBind()

绑定GridView的函数命名最好不要和已有函数冲突。
比如
BindGvXXXX()
takako_mu 2008-11-21
  • 打赏
  • 举报
回复
呵呵,實在是看不出Error,幫頂
twtetg 2008-11-21
  • 打赏
  • 举报
回复
[Quote=引用 6 楼 zhong2006 的回复:]
DataBind();//此方法为什么不执行?


DateBind();写错字母鸟鸟!!!
[/Quote]
不好意思,DateBind()是gridview绑定方法名,可能命名不太规范,让人造成误解了。。。
zzc2006 2008-11-21
  • 打赏
  • 举报
回复
[Quote=引用 6 楼 zhong2006 的回复:]
DataBind();//此方法为什么不执行?


DateBind();写错字母鸟鸟!!!
[/Quote]
正解,楼主把名称写错了
magicbacon 2008-11-21
  • 打赏
  • 举报
回复
DataBind();
GVLocalization.EditIndex = -1;
DataBind();//此方法为什么不执行?


我一般这样写的~
twtetg 2008-11-21
  • 打赏
  • 举报
回复
调试下F11到DataBind()是直接过去的,没进这个绑定方法
dengchenlu 2008-11-21
  • 打赏
  • 举报
回复
不执行???
看看是不是writeXml之后直接结束了
zhong2006 2008-11-21
  • 打赏
  • 举报
回复
DataBind();//此方法为什么不执行?


DateBind();写错字母鸟鸟!!!
twtetg 2008-11-21
  • 打赏
  • 举报
回复
辛苦各位来接分了。。。
dengyi425 2008-11-21
  • 打赏
  • 举报
回复
我是来接分滴
tengyue_PC 2008-11-21
  • 打赏
  • 举报
回复
我来了!接分啊!哈哈
dengyi425 2008-11-21
  • 打赏
  • 举报
回复
我是来接分滴的
twtetg 2008-11-21
  • 打赏
  • 举报
回复
自己先顶!
zhong2006 2008-11-21
  • 打赏
  • 举报
回复
//gridview绑定
private void DateBind()
{
string filepath = HttpContext.Current.Server.MapPath("/XXX.xml");
DataSet ds = new DataSet();
ds.ReadXml(filepath);
this.gridview1.DataSource = ds.Tables[0];
this.gridview1.DataBind();

}


protected void gridview1_RowUpdating(object sender, GridViewUpdateEventArgs e)
{
//更新选中行的记录到XML文件
string name = ((TextBox)GVLocalization.Rows[e.RowIndex].Cells[0].Controls[0]).Text.ToString();
string value = ((TextBox)GVLocalization.Rows[e.RowIndex].Cells[1].Controls[0]).Text.ToString();
bool enable = ((CheckBox)GVLocalization.Rows[e.RowIndex].Cells[2].Controls[0]).Checked;


GridViewRow row = gridview1.Rows[e.RowIndex];
string filepath = HttpContext.Current.Server.MapPath(@"/XXX.xml");

DataSet ds = new DataSet();
ds.ReadXml(filepath);
DataRow dr = ds.Tables[0].Rows[row.DataItemIndex];

dr["name"] = name;
dr["value"] = value;
dr["enable"] = enable;

ds.WriteXml(filepath);


GVLocalization.EditIndex = -1;
DataBind();//此方法为什么不执行?



好像谁不知道是自己写的绑定方法似的,真理果然是掌握在少数人手中!!汗一个!!

62,046

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术交流专区
javascript云原生 企业社区
社区管理员
  • ASP.NET
  • .Net开发者社区
  • R小R
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

.NET 社区是一个围绕开源 .NET 的开放、热情、创新、包容的技术社区。社区致力于为广大 .NET 爱好者提供一个良好的知识共享、协同互助的 .NET 技术交流环境。我们尊重不同意见,支持健康理性的辩论和互动,反对歧视和攻击。

希望和大家一起共同营造一个活跃、友好的社区氛围。

试试用AI创作助手写篇文章吧