Allen 2022-08-31 16:41:46 2165 0 0 0 0
GridView,Asp.net,查了半天,找到以下一些方法1,利用循环删除DataGridViewRow的方法,代码如下: //while(this.gvList.Rows.Count!=0) //{ //this.gvList.D…

查了半天,找到以下一些方法

1,利用循环删除 DataGridViewRow 的方法,代码如下:
        //while (this.gvList.Rows.Count != 0)
        //{
        //    this.gvList.DataSource.
        //}

2,我们知道 DataGridView 有个DataSource,可以直接放数据进去,那么当我们放一个特定的空 Table 进去,那么也可以清空了。但是,注意如果 DataGridView 显示的列名是自己在设计时做好的,那么放进去的空Table一定得是你DataGridView.DataSource=Table这个表。只要清空该表的数据,而再一次向让DataGridView.DataSource=Table就可以清空 DataGridView 了,而它的列名没有删除掉。例如:

        //this.gvList.DataSource=Table
        //Table.Clear();
        //this.gvList.DataSource=Table

但是不太好用。

还有一个

之前在做一个动态生成的gridview表格,因为每次查询的时候都是动态生成(包括列和数据),所以上网查询清空gridview的方法,以便后面重新动态生成表格。

网上的说法基本上只有一种:gridview1.DataSource = null; gridview1.DataBind();

这种做法是解决不了问题的,原因在于重新绑定的时候,会提示找不到某个要绑定的字段。或者提示数据源为空。不知道是不是vs的版本问题造成的,我的是vs2008.

刚发现的一种做法是:清空所有的列。gridview1.Columns.Clear();

微软提供了清空列,但却没有清空行的方法。但清空列已经达到了我的要求。

也是不管用。


试了一下,原来很简单:

        // 清除数据
        gvList.DataSource = null;
        gvList.DataBind();

很好用。


Tag: GridView Asp.net
我也要发一个   ·   返回首页   ·   返回[Asp.net]   ·   前一个   ·   下一个
欢迎评论
未登录,
请先 [ 注册 ] or [ 登录 ]
(一分钟即可完成注册!)
返回首页     ·   返回[Asp.net]   ·   返回顶部