Usuário com melhor resposta
Verificar no TextChanged Se o Valor Digitado é Maior que o permitido

Pergunta
-
Boa tarde pessoal,
estou fazendo uma verificação e se a nota do Aluno Passar de 10, ele exibirar uma mensagem e o aluno terá que digitar a nota correta novamente menor que 10.
Utilizei o seguinte codigo
Double NotaAluno_50 = 0.00; NotaAluno_50 = Convert.ToDouble(Nota_50.Text); if (NotaAluno_50 > 10) { MessageBox.Show("A nota só vai até 10"); }
Ele faz a verificação correta, porem quando estou deletando o conteúdo do NotaAluno_50, o programa simplesmente fecha e exibi o seguinte erro:
Exception thrown: 'System.FormatException' in mscorlib.dll
Additional information: A cadeia de caracteres de entrada não estava em um formato correto.Alguém poderia me ajudar?
Obrigado
Frases S2 - http://www.windowsphone.com/pt-br/store/app/frases-s2/72e15f77-a5ad-43ba-a752-3d2e09743008#
Respostas
-
Olá Jadson,
O erro acontece porque ele não pode converter "" em double. Coloca uma verificação ai como segue:
if (!string.IsNullOrEmpty(Nota_50.Text)) NotaAluno_50 = Convert.ToDouble(Nota_50.Text); else NotaAluno_50 = 0;
- Marcado como Resposta JadsonxSantos sábado, 21 de maio de 2016 12:23
-
Jadson, essa sua função esta vinculada a um textbox ?
Se estiver vc pode usar o evento Leave para incluir algo do tipo,
if( textbox.text == string.empty)
{MessageBox.Show("Campo Não pode ser Vazio!"); return;}
else
{
// tua função
}
Att, wsti.
- Marcado como Resposta JadsonxSantos sábado, 21 de maio de 2016 13:09
Todas as Respostas
-
Olá Jadson,
O erro acontece porque ele não pode converter "" em double. Coloca uma verificação ai como segue:
if (!string.IsNullOrEmpty(Nota_50.Text)) NotaAluno_50 = Convert.ToDouble(Nota_50.Text); else NotaAluno_50 = 0;
- Marcado como Resposta JadsonxSantos sábado, 21 de maio de 2016 12:23
-
Jadson, essa sua função esta vinculada a um textbox ?
Se estiver vc pode usar o evento Leave para incluir algo do tipo,
if( textbox.text == string.empty)
{MessageBox.Show("Campo Não pode ser Vazio!"); return;}
else
{
// tua função
}
Att, wsti.
- Marcado como Resposta JadsonxSantos sábado, 21 de maio de 2016 13:09
-
Bom dia Jadson,
segue a explicação:
Se a o valor do textbox não for nulo ou vazio faça isso. O ponto de exclamação no C# representa negação.
Então se não usar antes da pergunta ficaria: Se o valor for nulo ou vazio.
Boa sorte nos estudos, abraços.
-
Bom dia Jadson,
segue a explicação:
Se a o valor do textbox não for nulo ou vazio faça isso. O ponto de exclamação no C# representa negação.
Então se não usar antes da pergunta ficaria: Se o valor for nulo ou vazio.
Boa sorte nos estudos, abraços.
Frases S2 - http://www.windowsphone.com/pt-br/store/app/frases-s2/72e15f77-a5ad-43ba-a752-3d2e09743008#
-
Jadson, essa sua função esta vinculada a um textbox ?
Se estiver vc pode usar o evento Leave para incluir algo do tipo,
if( textbox.text == string.empty)
{MessageBox.Show("Campo Não pode ser Vazio!"); return;}
else
{
// tua função
}
Att, wsti.
Frases S2 - http://www.windowsphone.com/pt-br/store/app/frases-s2/72e15f77-a5ad-43ba-a752-3d2e09743008#
-
Olá Jadson,
O erro acontece porque ele não pode converter "" em double. Coloca uma verificação ai como segue:
if (!string.IsNullOrEmpty(Nota_50.Text)) NotaAluno_50 = Convert.ToDouble(Nota_50.Text); else NotaAluno_50 = 0;
Olá, Cara muito Obrigado, Funcionou, sou meio iniciante e gosto de aprender, você poderia me explicar essa linha de código que você me passou?
O Código final ficou assim:
private void Nota_50_TextChanged(object sender, TextChangedEventArgs e) { Double NotaAluno_50 = 0.00; if (!string.IsNullOrEmpty(Nota_50.Text)) NotaAluno_50 = Convert.ToDouble(Nota_50.Text); else NotaAluno_50 = 0; if (NotaAluno_50 > 10) { MessageBox.Show("A nota só vai até 10"); Nota_50.Clear(); } }
Frases S2 - http://www.windowsphone.com/pt-br/store/app/frases-s2/72e15f77-a5ad-43ba-a752-3d2e09743008#