首页 新闻 会员 周边

关于Gridview的特殊用法

0
悬赏园豆:50 [已解决问题] 解决于 2011-05-24 21:50

各位大虾,我想用gridview来绑定数据,是在代码里面绑定的,类似于这样绑定 GridView1.DataSource = ds;  GridView1.DataBind(); 绑定出来之后,我想实现在gridview里面编辑更新,删除的操作。但是我又不想用到SqlDataSource这样的控件,就是想不要SqlDataSource,怎么做呢?

大龄书童的主页 大龄书童 | 初学一级 | 园豆:150
提问于:2011-04-20 18:07
< >
分享
最佳答案
0

前台添加编辑按钮列:

 

<asp:GridView>
<Columns>
<asp:CommandField ButtonType="Button" HeaderText="编辑" ShowEditButton="True"></asp:CommandField>
</Columns>
</asp:GridView>

后台响应GridView的OnRowUpdating事件:

 

 

//获得更新用的索引,可以用DataKey,也可以用GridView中某一格的值:
string strKey= this.GridView1.DataKeys[e.RowIndex].Value.ToString();

然后UPDATE SomeTable SET SomeField=SomeValue Where Key=strKey

收获园豆:10
drsniper | 菜鸟二级 |园豆:456 | 2011-04-20 20:51
可是我的GridView1.DataSource = ds这个ds不是从数据库里面查询出来的,是我在外面拼起来的,没有主键的,怎么做呢?
大龄书童 | 园豆:150 (初学一级) | 2011-04-21 09:31
你更新单条记录必须对应到某一条记录吧,比如说我更新一个考生表,我在读取数据源ds时候,就将“学号”字段取出来,并把GRIDVIEW的DATAKEYNAMES指定为“学号”。不论怎样,你应该将更新需要用到的SQL语句的“WHERE”后面跟着的所有字段读出来,或者计算出来。
drsniper | 园豆:456 (菜鸟二级) | 2011-04-22 09:43
其他回答(4)
0

邮箱给我,给你发一个例子

收获园豆:10
马战鹏 | 园豆:432 (菜鸟二级) | 2011-04-20 18:14
mokaijie@126.com 谢谢
支持(0) 反对(0) 大龄书童 | 园豆:150 (初学一级) | 2011-04-21 09:25
0

    protected void Page_Load(object sender, EventArgs e)
    {
        GridView1.DataSource = GetData();
        GridView1.DataBind();
    }
    public DataSet GetData()
    {
        DataSet ds = new DataSet();
        using (SqlConnection conn = new SqlConnection("Data Source=.;Initial Catalog=DATABASE.MDF;Integrated Security=True"))
        {
            SqlDataAdapter da = new SqlDataAdapter("select * from Table", conn);
            da.Fill(ds);
        }
        return ds;
    }

收获园豆:10
Survival.Sun | 园豆:267 (菜鸟二级) | 2011-04-21 08:54
我想你误解我意思了,我不是要怎么绑定数据源
支持(0) 反对(0) 大龄书童 | 园豆:150 (初学一级) | 2011-04-21 09:34
0

csdn上面一个人一直推荐的所谓“老掉牙”的教程

http://blog.csdn.net/freeze_soul/archive/2007/09/07/1775720.aspx

收获园豆:10
顾晓北 | 园豆:10844 (专家六级) | 2011-04-21 10:12
0

在OnRowEditing里自己写逻辑就行了

收获园豆:10
ailove | 园豆:382 (菜鸟二级) | 2011-04-21 22:56
清除回答草稿
   您需要登录以后才能回答,未注册用户请先注册