Programação em C# com Windows Forms: Salvar Arquivos, Teclas, Classes e Leitura de Dados
Para salvar em arquivo texto
Using System.IO;
string contato = textBox1.Text + "|" + textBox2.Text + "|";
saveFileDialog1.Filter = "txt files (*.txt)|*.txt";
//if (saveFileDialog1.ShowDialog() == DialogResult.OK)
if (saveFileDialog1.ShowDialog() == System.Windows.Forms.DialogResult.OK && saveFileDialog1.FileName.Length > 0)
{
File.WriteAllText(saveFileDialog1.FileName, contato);
}
Carregar foto
if (openFileDialog1.ShowDialog() == DialogResult.OK)
imgFotoCliente.ImageLocation = openFileDialog1.FileName;
Tratamento de teclas
private void textBox1_KeyPress(object sender, KeyPressEventArgs e)
{
if (e.KeyChar == (char)Keys.Enter)
{
textBox2.Focus();
}
if (e.KeyChar == (char)Keys.Escape)
{
textBox1.Clear();
}
textoDigitado += e.KeyChar;
//MessageBox.Show("você pressionou: " + e.KeyChar);
}
private void textBox2_KeyDown(object sender, KeyEventArgs e)
{
if (e.Alt == true)
MessageBox.Show("Você pressionou ALT");
if (e.Control == true)
MessageBox.Show("Você pressionou Control");
if (e.Shift == true)
MessageBox.Show("Você pressionou SHIFT");
MessageBox.Show(e.KeyCode.ToString());
}
Abrir um novo form
frAgenda newForm2 = new frAgenda();
newForm2.ShowDialog();
Classes
Objeto = classe
Exemplo:
caneta = objeto
Evento é um método que dá a oportunidade de programar.
Métodos vêm prontos e não podem mudar sua função.
Sintaxe
class Aluno
{
public int ra;
public string nome;
public double n1, n2;
public double CalculaNota()
{
return n1 * 0.4 + n2 * 0.6;
}
}
Aluno aluno1 = new Aluno();
aluno1.ra = 032115565;
aluno1.nome = "João";
aluno1.n1 = 6;
aluno1.n2 = 8;
Console.WriteLine(aluno1.CalculaNota());
// INSTANCIAR = new Aluno()
// Melhor forma de instanciar uma classe de alunos seria um vetor.
Leitura de dados de arquivo
if (openFileDialog1.ShowDialog() == DialogResult.OK)
{
string[] linhas = File.ReadAllLines(openFileDialog1.FileName);
// sabemos que na primeira linha contém os dados concatenados por "|"
string[] dados = linhas[0].Split('|');
txtCodigo.Text = dados[0];
txtNome.Text = dados[1];
txtData.Text = dados[2];
cbCidade.SelectedIndex = Convert.ToInt32(dados[3]);
if (dados[4] == "M")
rbMasc.Checked = true;
else
rbFem.Checked = true;
pckTemCasa.Checked = Convert.ToBoolean(dados[5]);
// preencher agora os eletrodomésticos
lbEletrodomesticos.ClearSelected();
for (int i = 1; i < linhas.Length; i++)
{
int posicao = lbEletrodomesticos.Items.IndexOf(linhas[i]);
if (posicao != -1)
lbEletrodomesticos.SetSelected(posicao, true);
}
}
Leitura de dados de arquivo (versão repetida)
if (openFileDialog1.ShowDialog() == DialogResult.OK)
{
string[] linhas = File.ReadAllLines(openFileDialog1.FileName);
// sabemos que na primeira linha contém os dados concatenados por "|"
string[] dados = linhas[0].Split('|');
txtCodigo.Text = dados[0];
txtNome.Text = dados[1];
txtData.Text = dados[2];
cbCidade.SelectedIndex = Convert.ToInt32(dados[3]);
if (dados[4] == "M")
rbMasc.Checked = true;
else
rbFem.Checked = true;
ckTemCasa.Checked = Convert.ToBoolean(dados[5]);
// preencher agora os eletrodomésticos
lbEletrodomesticos.ClearSelected();
for (int i = 1; i < linhas.Length; i++)
{
int posicao = lbEletrodomesticos.Items.IndexOf(linhas[i]);
if (posicao != -1)
lbEletrodomesticos.SetSelected(posicao, true);
}
}