Array
(
)

Como limpar datagridview sem excluir as colunas

Alexandre Shiraiwa
   - 07 jul 2011

ola

Como limpar datagridview sem excluir as colunas?
Ja tentei datagridview.datasource=null
Ja tentei datagridview.datasource=""

eu preencho a minha grid com uma list

Ja tentei limpar a lista, mas vai td ok so que no final da minha rotina ele me fala que de system.outofrangeexception : o indice 0 nao tem um valor

Gustavo Valle
   - 08 jul 2011

Olá Alexandre, Veja o exemplo abaixo:  

SqlDataAdapter daA;

DataSet dsA = new DataSet();

string sql = "";

sql += "SELECT * FROM Itens";

cA.Conectar();

daA = new SqlDataAdapter(sql, cA.c);

daA.Fill(dsA, "Itens");

dgv1.DataSource = dsA.Tables["Itens"];

cA.Desconectar();

Explicando: Você precisa de um sql adapter e  precisa instanciar a classe DataSet

SqlDataAdapter daA;

DataSet dsA = new DataSet();

Imaginando que sua lista vem de uma tabela no banco de dados, declare uma variável para receber sua instrução SQL. string sql = "";    No caso estou chamando o método Conectar de minha classe para conectar ao banco.Depois instancio a classe SqlDataAdapter, passando a variável do select e conexão. daA = new SqlDataAdapter(sql, cA.c);   Em seguida atribuo ao meu DataAdapter na propriedade Fill o data set declarado, passando a tabela como referência. daA.Fill(dsA, "Itens");   Na propriedade data source do grid atribuo a propriedade tables do meu DataSet informando a tabela que contém os dados. dgv1.DataSource = dsA.Tables["Itens"];

Finalmente desconecto do banco através do método Desconectar de minha classe.

Até aqui carregamos o grid. Para limpá-lo basta deixar a propriedade Tables vazia, o que fará com que o data source esteja vazio. dgv1.DataSource = dsA.Tables[""];   Lembre-se de conectar e desconectar do banco quando necessaário.   Espero ter ajudado.   Abraço    

Henrylle Maia
   - 08 jul 2011

Tem como vc explicar o cenário que vc está utilizando? Não consegui entender pq trazer um gridview vazio, apenas com as colunas.

Alexandre Shiraiwa
   - 12 jul 2011

Gustavo
Entao gustavo esse que vc me explicou funciona so que ele estara pegando o nome das colunas do meu select e eu
nao queru isso

eu queru criar as colunas no meu datagridview e depois so preencher as duas

brigado pela dica gustavo

henrylle
Entao henrylle eu tenhu um datagridview que esta preenchido e com colunas fixas

Estou tendo problema pois quando eu queru limpar o grid view para que seja feito uma nova consulta

Ele limpa so que as colunas fixas que eu criei sao tiradas tbem

queru limpar somente a consulta e sem tirar as colunas.

att

Hernane Goncalves
   - 17 jul 2011

gvwCountAmigo.DataSource = null;

gvwCountAmigo.DataBind();

faça apenas isso e resolve sua duvida

Alalala
   - 17 jul 2011

  Limpar célula selecionada
  Colocar isso num button
#Código

    DataGridView1.CurrentCell.Value = ""


Hernane Goncalves
   - 23 jul 2011

Você ja conseguiu resolver seu problema ? 

Douglas Negreiros
   - 17 ago 2011

se estiver usando vb.net:   datagrid.datasource = nothing   se estiver usando C#:   datagrid.datasource = null;

Ápice Ltda.
   - 05 jul 2012

Que tal esta:

DataGridView1.rows.clear()

Norton Guerreiro
   - 08 mai 2015

No meu caso o rows.clear() Funcionou perfeitamente !