| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 7859 人关注过本帖
标题:【已解决】GridView中如何获取修改后的某个单元格的值
只看楼主 加入收藏
天堂落日
Rank: 2
等 级:论坛游民
威 望:2
帖 子:182
专家分:10
注 册:2007-6-17
结帖率:100%
收藏
 问题点数:0 回复次数:8 
【已解决】GridView中如何获取修改后的某个单元格的值
如题:
    调用NotrhWind数据库,并将数据绑定至GridView1中,并添加了修改功能,其他功能都没问题,现在遇到的问题是点击更新之后无法获取GridView1中修改后的数据(得到的都是旧的数据),哪位朋友知道的帮忙解决一下
    下边是我写的获取新内容的代码:
程序代码:
 protected void GridView1_RowUpdating(object sender, GridViewUpdateEventArgs e)
    {
        string strCus = this.GridView1.DataKeys[e.RowIndex][0].ToString();
        string strCompanyName = ((TextBox)this.GridView1.Rows[e.RowIndex].Cells[0].Controls[0]).Text.ToString();
        string strContractName = ((TextBox)this.GridView1.Rows[e.RowIndex].Cells[1].Controls[0]).Text.ToString();
        string strAddress = ((TextBox)this.GridView1.Rows[e.RowIndex].Cells[2].Controls[0]).Text.ToString();
        updateCustomers(strCus, strCompanyName, strContractName, strAddress);
    }


[[it] 本帖最后由 天堂落日 于 2008-6-8 12:11 编辑 [/it]]

[[it] 本帖最后由 天堂落日 于 2008-6-18 10:18 编辑 [/it]]
搜索更多相关主题的帖子: GridView 
2008-06-08 12:07
multiple19O2
Rank: 1
等 级:新手上路
帖 子:326
专家分:0
注 册:2007-8-29
收藏
得分:0 
抱歉 想帮你的,但是这堂课我没听讲……
2008-06-08 19:43
hebingbing
Rank: 6Rank: 6
来 自:黄土高坡
等 级:贵宾
威 望:27
帖 子:3417
专家分:371
注 册:2007-10-22
收藏
得分:0 
updateCustomers(strCus, strCompanyName, strContractName, strAddress);
这个方法不贴出来看不出来有什么名堂……
2008-06-09 09:46
青格儿
Rank: 4
等 级:贵宾
威 望:11
帖 子:698
专家分:20
注 册:2007-7-31
收藏
得分:0 
得到的都是旧的数据?如果数据库变了,那怎么会是旧数据啊?没更新成功吧?不太明白怎么得到的都是旧数据?
2008-06-10 13:21
snipen
Rank: 1
等 级:新手上路
帖 子:46
专家分:0
注 册:2007-5-5
收藏
得分:0 
在Page_Load 事件中添加 if(!Page.IsPostBack){}

像我这么拉风的男孩子,就像是黑暗中的萤火虫那样,在哪里都是那么的鲜明出众……
2008-06-10 13:30
天堂落日
Rank: 2
等 级:论坛游民
威 望:2
帖 子:182
专家分:10
注 册:2007-6-17
收藏
得分:0 
回复 3# hebingbing 的帖子
程序代码:
public void updateCustomers(string strCus, string strCompanyName, string strContractName, string strAddress)
    {
        SqlConnection con = new SqlConnection(strCon);
        SqlCommand cmd = new SqlCommand("update Customers set CompanyName='" + strCompanyName + "', ContactName='" + strContractName + "' ,Address='" + strAddress + "' where CustomerID='" + strCus + "'", con);
        con.Open();
        int intResult=cmd.ExecuteNonQuery();
        con.Close();
        gridviewBind();
    }

我说的无法获取新数据是指在上边的GridView1_RowUpdating函数种,字符串型变量strCompanyName赋值问题,没有获取修改后的GridView值
如果把GridView1_RowUpdating函数当中的赋值语句换成直接赋值,譬如说string strCompanyName ="aaa";这样的语句就可以正常修改数据库,我调试了一下,问题就处在赋值语句那里,不知道怎么获取

2008-06-11 16:24
hebingbing
Rank: 6Rank: 6
来 自:黄土高坡
等 级:贵宾
威 望:27
帖 子:3417
专家分:371
注 册:2007-10-22
收藏
得分:0 
那你把你的public void updateCustomers(string strCus, string strCompanyName, string strContractName, string strAddress)
方法先改成输出那几个变量看看你获取的是什么值……
还有就是如果你的GridView1是在page_load事件中绑定的话,确保加了ispostback的判断……
2008-06-11 17:03
冰彩虹
Rank: 4
来 自:上海
等 级:贵宾
威 望:14
帖 子:806
专家分:44
注 册:2007-6-28
收藏
得分:0 
把你Page_Load事件里的代码贴出来看看,问题肯定出在那里

Flying without wings
2008-06-11 21:38
天堂落日
Rank: 2
等 级:论坛游民
威 望:2
帖 子:182
专家分:10
注 册:2007-6-17
收藏
得分:0 
[bo][un]snipen[/un] 在 2008-6-10 13:30 的发言:[/bo]

在Page_Load 事件中添加 if(!Page.IsPostBack){}


确实是忘记添加IsPostBack判断,呵呵
添加之后就OK了,问题已解决,谢谢各位

2008-06-18 10:17
快速回复:【已解决】GridView中如何获取修改后的某个单元格的值
数据加载中...
 
   



关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.011797 second(s), 7 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved