Usuário com melhor resposta
Salvar dados do DataGridView

Pergunta
-
Como salvar os dados contidos na datagridview em algum formato tipo txt. ou algum outro para que posteriormente eu possa abrir e editar pelo datagrid.
Esse codigo que eu uso pra salvar textbox, mas não funciona para datagrid...
private void but1_Click(object sender, EventArgs e)
{
if (saveFileDialog1.ShowDialog() == System.Windows.Forms.DialogResult.OK && saveFileDialog1.FileName.Length > 0)
{
dataGridView1.SaveFile(saveFileDialog1.FileName,
dataGridViewStreamType.PlainText);
}
e ja aproveitando o embalo, como faço para ler na datagrid esse arquivo salvo ?
Alguem pode me ajudar ?
Respostas
-
Primeira Pergunta:
DataSet dst = new DataSet();
DataTable dt = new DataTable();
dt.Columns.Add("Codigo", typeof(string));
dt.Columns.Add("Descricao", typeof(string));
dst.Tables.Add(dt);
DataRow E;
E = dst.Tables[0].NewRow();
foreach (DataGridViewRow var in dataGridView1.Rows)
{
E = dst.Tables[0].NewRow();
E["Codigo"] = var.Cells[1].ToString();
E["Descricao"] = var.Cells[2].ToString();
dst.Tables[0].Rows.Add(E);
}
dst.WriteXml(@"C:\teste.xml");
Criar um DataSet e um DataTable referente aos dados que tu vai ter, feito isso é só percorrer o datagridview e criar os registros no datatable e usar o dataset.writeXml apontando para o local onde deve ser salvo.
Segunda pergunda,
DataSet dst = new DataSet();
dst.ReadXml(@"C:\teste.xml");
dataGridView1.DataSource = dst;
dataGridView1.DataMember = dst.Tables[0].ToString();
Criar DataSet e usar o DataSet.ReadXml apontando para o arquivo.
[]s
Leonardo Jacques da Silva Desenvolvedor .net- Marcado como Resposta Fabricio csharp sexta-feira, 21 de agosto de 2009 00:05
Todas as Respostas
-
Primeira Pergunta:
DataSet dst = new DataSet();
DataTable dt = new DataTable();
dt.Columns.Add("Codigo", typeof(string));
dt.Columns.Add("Descricao", typeof(string));
dst.Tables.Add(dt);
DataRow E;
E = dst.Tables[0].NewRow();
foreach (DataGridViewRow var in dataGridView1.Rows)
{
E = dst.Tables[0].NewRow();
E["Codigo"] = var.Cells[1].ToString();
E["Descricao"] = var.Cells[2].ToString();
dst.Tables[0].Rows.Add(E);
}
dst.WriteXml(@"C:\teste.xml");
Criar um DataSet e um DataTable referente aos dados que tu vai ter, feito isso é só percorrer o datagridview e criar os registros no datatable e usar o dataset.writeXml apontando para o local onde deve ser salvo.
Segunda pergunda,
DataSet dst = new DataSet();
dst.ReadXml(@"C:\teste.xml");
dataGridView1.DataSource = dst;
dataGridView1.DataMember = dst.Tables[0].ToString();
Criar DataSet e usar o DataSet.ReadXml apontando para o arquivo.
[]s
Leonardo Jacques da Silva Desenvolvedor .net- Marcado como Resposta Fabricio csharp sexta-feira, 21 de agosto de 2009 00:05
-
Um erro na primeira resposta onde no foreach do datagridview tu não precisa usar ".ToString" ai ficaria assim:
foreach (DataGridViewRow var in dataGridView1.Rows)
{
E = dst.Tables[0].NewRow();
E["Codigo"] = var.Cells[1].Value;
E["Descricao"] = var.Cells[2].Value;
dst.Tables[0].Rows.Add(E);
}
Leonardo Jacques da Silva Desenvolvedor .net