Usuário com melhor resposta
Bloco de notas em c#

Pergunta
-
Galera boa tarde, estou fazendo um trabalho para a escola onde é preciso fazer um bloco de notas, mas estou com uma dúvida.. como o bloco de notas no submenu do Arquivo, quando você clica em Novo.. se houver algum texto escrito ele abre a caixa de dialogo para salvar, caso não houver nada escrito ele continua em branco e não abre nem o messagebox perguntando se gostaria de salvar e nem a caixa de dialogo para salva. Eu consegui apenas a opção que se não houver texto escrito ele não abre a caixa para salvar, mas ele está abrindo o messagebox perguntando se gostaria de salvar. HELP !!
private void novoToolStripMenuItem_Click(object sender, EventArgs e) { if (!string.IsNullOrEmpty(this.richTextBox1.Text)) { NovoArquivo(false); } DialogResult result = MessageBox.Show("Deseja Salvar as alterações em Sem título?", "Bloco de notas", MessageBoxButtons.YesNoCancel); if(result == DialogResult.Yes && !string.IsNullOrEmpty(this.richTextBox1.Text)) { NovoArquivo(true); } else if (result == DialogResult.No) { NovoArquivo(false); } }
Respostas
-
Olá!
Não seria a falta de um 'return;' na verificação?
Segue exemplo
private void novoToolStripMenuItem_Click(object sender, EventArgs e) { if (!string.IsNullOrEmpty(this.richTextBox1.Text)) { NovoArquivo(false); // return tem a função de não prosseguir com o restante do método return; } DialogResult result = MessageBox.Show("Deseja Salvar as alterações em Sem título?", "Bloco de notas", MessageBoxButtons.YesNoCancel); if(result == DialogResult.Yes && !string.IsNullOrEmpty(this.richTextBox1.Text)) { NovoArquivo(true); } else if (result == DialogResult.No) { NovoArquivo(false); } }
Espero que lhe ajude!
[]´s
Leandro Ferreira
Desenvolvedor .Net
Skype: leandro.vipsolucoes
GitHub: github.com/leandrovip
leandro@vipsolucoes.com- Marcado como Resposta Luc4srios segunda-feira, 11 de junho de 2018 23:05
Todas as Respostas
-
Olá!
Não seria a falta de um 'return;' na verificação?
Segue exemplo
private void novoToolStripMenuItem_Click(object sender, EventArgs e) { if (!string.IsNullOrEmpty(this.richTextBox1.Text)) { NovoArquivo(false); // return tem a função de não prosseguir com o restante do método return; } DialogResult result = MessageBox.Show("Deseja Salvar as alterações em Sem título?", "Bloco de notas", MessageBoxButtons.YesNoCancel); if(result == DialogResult.Yes && !string.IsNullOrEmpty(this.richTextBox1.Text)) { NovoArquivo(true); } else if (result == DialogResult.No) { NovoArquivo(false); } }
Espero que lhe ajude!
[]´s
Leandro Ferreira
Desenvolvedor .Net
Skype: leandro.vipsolucoes
GitHub: github.com/leandrovip
leandro@vipsolucoes.com- Marcado como Resposta Luc4srios segunda-feira, 11 de junho de 2018 23:05
-
Consegui ...
Criei uma condição de if para abrir o messagebox somente se o richTextBox for diferente de nulo ou vazio.
private void novoToolStripMenuItem_Click(object sender, EventArgs e) { if (!string.IsNullOrEmpty(this.richTextBox1.Text)) { DialogResult result = MessageBox.Show("Deseja Salvar as alterações em Sem título?", "Bloco de notas", MessageBoxButtons.YesNoCancel); if (result == DialogResult.Yes && !string.IsNullOrEmpty(this.richTextBox1.Text)) { NovoArquivo(true); } else if (result == DialogResult.No) { NovoArquivo(false); } } }
-