[英]How clear GridView in asp.net?
我在 asp.net 和一个模块中做一个网页,选择了一个带有FileUpLoad
的 Excel 存档,然后单击一个按钮导入。 到目前为止我很好。 但是在我想要选择其他 Excel 存档并单击按钮导入的那一刻,不要清除GridView
并显示错误。 我尝试这样做是因为我在其他类似的问题中看到过。
有了这个,我加载了网格
Conn = string.Format(Conn, DireccionArchivo, MostrarHDR);
OleDbConnection ConnExcel = new OleDbConnection(Conn);
OleDbCommand CmdExcel = new OleDbCommand();
OleDbDataAdapter Oda = new OleDbDataAdapter();
DataTable Dt = new DataTable();
CmdExcel.Connection = ConnExcel;
ConnExcel.Open();
CmdExcel.CommandText = "SELECT * From ["Page1$"]";
Oda.SelectCommand = CmdExcel;
Oda.Fill(Dt);
ConnExcel.Close();
grdResultados.Caption = Path.GetFileName(DireccionArchivo);
grdResultados.DataSource = Dt;
grdResultados.DataBind();
有了这个,我想清除GridView
和上次调用的新加载GridView
的方法
DataTable ds = new DataTable();
ds = null;
grdResultados.DataSource = ds;
grdResultados.DataBind();
比显示我的错误是在grdResultados.DataBind();
第二次调用时。
只需使用空值:
grdResultados.DataSource = null;
grdResultados.DataBind();
我解决了这个问题,比用清除 GridView 的那一刻
DataTable ds = new DataTable();
ds = null;
grdResultados.DataSource = ds;
grdResultados.DataBind();
这清除了 GridView 但不清除列的名称,这是错误,还必须清除列的名称。 要删除列:
for (int i = 0; grdResultados.Columns.Count > i; )
{
grdResultados.Columns.RemoveAt(i);
}
并且在加载 GridView 的方法中必须使用此属性自动生成列:
grdResultados.AutoGenerateColumns = true;
我离开这个以防其他人有同样的问题
尝试这个
grdResultados.DataSource = null;
或者
grdResultados.Rows.Clear();
然后重新绑定网格视图
int gvHasRows = grdResultados.Rows.Count;
if (gvHasRows > 0)
{
grdResultados.Columns.Clear();
grdResultados.DataBind();
}
在尝试清除之前,首先检查 Gridview 中是否有数据。 行没有清除功能。
如果您使用会话清除会话示例:
DataTable ds = new DataTable();
ds = null;
GV.DataSource = ds;
GV.DataBind();
for (int i = 0; GV.Columns.Count > i; )
{
GV.Columns.RemoveAt(i);
}
ViewState["CurrentData"] = null;
仅使用您的列名创建一个空数据表并重新绑定
你可以简单地这样做:
GridView1.SelectedIndex = -1;
If dataset IsNot Nothing AndAlso dataset.Tables.Count > 0 AndAlso dataset.Tables(0).Rows.Count > 0 Then grid.DataSource = dataset grid.DataBind() Else grid.DataSource = Nothing grid.DataBind()
如果您使用的是 XAML 定义的网格,请改用以下代码:
GridView1.Children.Clear();
GridView1.RowDefinitions.Clear();
GridView1.ColumnDefinitions.Clear();
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.