Usuário com melhor resposta
Tem como escolhero diretorio para salvar uma datagrid no win vista?

Pergunta
-
Ja tentei do metodo convencional que é
private void button3_Click(object sender, EventArgs e)
{
if (saveFileDialog1.ShowDialog() == DialogResult.OK)
{
StreamWriter Arquivo = new StreamWriter(saveFileDialog1.FileName);
Arquivo.WriteLine(dataGridView1);
}
}
private void button4_Click(object sender, EventArgs e)
{
if (openFileDialog1.ShowDialog() == DialogResult.OK)
{
StreamReader Arquivo = new StreamReader(openFileDialog1.FileName);
mas ele não salva......
Esse geito aki ele salva, mas não tem como escolhero diretório...
private void button3_Click(object sender, EventArgs e)
{
DataSet dst = new DataSet();
DataTable dt = new DataTable();
dt.Columns.Add("Nome", typeof(string));
dt.Columns.Add("Gols", 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["Nome"] = var.Cells[0].Value;
E["Gols"] = var.Cells[1].Value;
dst.Tables[0].Rows.Add(E);
}
dst.WriteXml("teste.xml");
}
private void button4_Click(object sender, EventArgs e)
{
DataSet dst = new DataSet();
dst.ReadXml("teste.xml");
dataGridView1.DataSource = dst;
dataGridView1.DataMember = dst.Tables[0].ToString();
}
}
}
Alguem ai tem alguma luz ????
Respostas
-
De forma parecida
Use um controle OpenFileDialog (ao inves do FolderBrowserDialog)
if (openFileDialog1.ShowDialog() == DialogResult.OK)
{
dst.ReadXml( openFileDialog1.FileName );
}
Voce pode definir a propriedade Filter do OpenFileDialog para exibir somente arquivos xml (*.xml).
Sugiro que você dê uma estudado em artigos ou livros para ter um noção melhor dos controles (e do framework) em geral.
Um site legal para iniciar é o http://www.macoratti.net.
Aqui mesmo no fórum voce encontra boas indicações de sites e livros.
[]s
Robson Castilho - MCTS .Net 2.0 Windows/Web Applications [Se o post foi útil, não esqueça de marcá-lo. Obrigado]- Marcado como Resposta Fabricio csharp sexta-feira, 28 de agosto de 2009 20:36
Todas as Respostas
-
Fabricio
O metodo WriteXml aceita o caminho completo do arquivo para que possa salva-lo onde deseja.
Para escolher a pasta, voce pode usar a classe FolderBrowserDialog();
// cria instancia (se preferir voce pode arrastar o controle FolderBrowserDialog da toolbox para o form
FolderBrowserDialog folderBrowserDialog1 = new FolderBrowserDialog();
string path = "";
if (folderBrowserDialog1.ShowDialog() == DialogResult.OK)
{
path = folderBrowserDialog1.SelectedPath;
}
Pronto, com o código acima, voce obteve a pasta onde vai salvar o arquivo. Agora é so fazer:
dst.WriteXml(path + @"\teste.xml");
[]s
Robson Castilho - MCTS .Net 2.0 Windows/Web Applications [Se o post foi útil, não esqueça de marcá-lo. Obrigado] -
-
Olá Fabrício
O arquivo não existe (logo não tem o pq pega-lo com alguma janela Dialog). Você ainda vai criá-lo!!!!!
Portanto, se você quer que o usuário escolha um nome, simplesmente faça-o preencher o nome em um TextBox.
(E a pasta, sim, ele escolhe pela Dialog, como te passei acima)
[]s
Robson Castilho - MCTS .Net 2.0 Windows/Web Applications [Se o post foi útil, não esqueça de marcá-lo. Obrigado] -
-
??!???!???!
Fabricio,
Não entendi o motivo da pergunta mas.....
O textbox serve pro usuário simplesmente DIGITAR o nome do arquivo. Só isso.
Depois, voce lê o conteudo do textbox:
dst.WriteXml(path + @"\" + textboxNomeArquivo.Text);
O máximo que voce pode fazer antes é evitar, por exemplo, que o usuário digite alguma extensao de arquivo (removendo do '.' em diante) e no código acima já deixar fixa a extensão XML.
[]s
Robson Castilho - MCTS .Net 2.0 Windows/Web Applications [Se o post foi útil, não esqueça de marcá-lo. Obrigado] -
-
De forma parecida
Use um controle OpenFileDialog (ao inves do FolderBrowserDialog)
if (openFileDialog1.ShowDialog() == DialogResult.OK)
{
dst.ReadXml( openFileDialog1.FileName );
}
Voce pode definir a propriedade Filter do OpenFileDialog para exibir somente arquivos xml (*.xml).
Sugiro que você dê uma estudado em artigos ou livros para ter um noção melhor dos controles (e do framework) em geral.
Um site legal para iniciar é o http://www.macoratti.net.
Aqui mesmo no fórum voce encontra boas indicações de sites e livros.
[]s
Robson Castilho - MCTS .Net 2.0 Windows/Web Applications [Se o post foi útil, não esqueça de marcá-lo. Obrigado]- Marcado como Resposta Fabricio csharp sexta-feira, 28 de agosto de 2009 20:36
-
Obrigado pelas dicas amigo, vou dar mais umas lidas, afinal ainda sou iniciante e toda informação é bem vinda.
Agora só ta faltando descobrir o do por que da minha datagrid não editar os dados depois de lido.
Meu programa tem botões de atualizar, adicionar, salvar e abrir.
MAs depois que eu abro um arquivo salvo pelo próprio programa, eu não posso atualizar nem adicionar, senão a minha lista se apaga.
Mas mesmo assim muito obrigado pelas dicas amigo...