Ir para o conteúdo
  • Revista PROGRAMAR: Já está disponível a edição #60 da revista programar. Faz já o download aqui!

AdyWado0

[Resolvido] Textbox que só aceita nº em float (usando a ',')

Mensagens Recomendadas

AdyWado0

if (e.KeyChar == 46 && txtpreco.Text.IndexOf('.') != -1)
{
e.Handled = true;
return;
}
if (!Char.IsDigit(e.KeyChar) && e.KeyChar != 8 && e.KeyChar != 46)
{
e.Handled = true;
}

O código acima é o que tenho, visto não conseguir usar a vírgula, como separador decimal, e queria saber se alguma maneira de conseguir usar a vírgula.

O trabalho que estou a fazer, envolve preço de produtos, e preciso de usar a vírgula como decimal, porque o programa, "ignora o ponto" como separador decimal.

-----------------------------------------------

Tenho também outra questão que coloca-se com, como obter na textbox o valor em float, em C, eu sabia como fazer, mudei para C# e não consigo saber como obtê-lo.

public void txtpreco_Enter(object sender, EventArgs e)
{
float i;
float ValorIVA;
if (cbIVA.Text == "22%")
{
ValorIVA = Convert.ToSingle("0,22");
i = Convert.ToSingle(txtpreco.Text) * ValorIVA;
txtiva.Text = i.ToString() + " €";
}
else if (cbIVA.Text == "23%")
{
ValorIVA = Convert.ToSingle("0,23");
i = Convert.ToSingle(txtpreco.Text) * ValorIVA;
txtiva.Text = i.ToString() + " €";
}
else
{
txtiva.Text = null;
}
}

Queria passar para textbox do IVA, em valor float, visto que se o preço for , da-me mais de 2 casas decimais.

dBZ20yt.png

P.S.: Coloquei o código da restrição a letras, para usar a vírgula

Partilhar esta mensagem


Ligação para a mensagem
Partilhar noutros sites

Crie uma conta ou ligue-se para comentar

Só membros podem comentar

Criar nova conta

Registe para ter uma conta na nossa comunidade. É fácil!

Registar nova conta

Entra

Já tem conta? Inicie sessão aqui.

Entrar Agora

×

Aviso Sobre Cookies

Ao usar este site você aceita os nossos Termos de Uso e Política de Privacidade. Este site usa cookies para disponibilizar funcionalidades personalizadas. Para mais informações visite esta página.