none
Boleto Bancario c# (Alterar a data de vencimento e valor)

    Question

  • Ola pesoal estou seguindo um modelo do Boleto.Net (http://www.codeplex.com/boletonet).

    Ja conseguir alterar todos os dados para geração do boleto, porem nao conseguir alterar o valor do vencimento e valor.

    Segue o codigo

     BoletoBancario boletoBancario = new BoletoBancario();

            boletoBancario.CodigoBanco =1;
            
            DateTime vencimento = new DateTime(2012, 12, 11);// desejo alterar essa data por uma textbox

            #region Exemplo Carteira 16, com nosso número de 11 posições
            /*
             * Nesse exemplo utilizamos a carteira 16 e o nosso número no máximo de 11 posições.
             * Não é necessário informar o numero do convênio e nem o tipo da modalidade.
             * O nosso número tem que ter no máximo 11 posições.
             */

            Cedente c = new Cedente("00.000.000/0000-00", "EG Informática", "1234", "1", "123456", "1");
            Boleto b = new Boleto(vencimento, 10.01, "16", "09876543210", c);// desejo alterar esse valor por uma textbox "10.01"

    Tuesday, December 18, 2012 2:06 AM

Answers

  • Se tiver a certeza que o texto da textbox esta no formato correcto pode fazer:

    DateTime vencimento = DateTime.Parse(textbox1.Text);

    Pode também usar o DateTime.TryParse.

    O segundo caso é igual, passa o texto da textbox:

     Boleto b = new Boleto(vencimento, textboxValor.Text, "16", "09876543210", c);

    Precisa  de ter cuidado com o tipo de dados que esta lidando. O text da textbox é um string, caso precise de um float ou decimal tem de converter o conteúdo.


    Não esqueça de marcar o post como útil caso tenha te ajudado.

    • Marked as answer by Sigrids LIma Tuesday, December 18, 2012 6:25 PM
    Tuesday, December 18, 2012 4:05 PM
  • Se o valor pretendido for um double sim.

    Chamo mais uma vez a atenção das conversões que por vezes podem falhar quando o texto das textboxs não esta no "formato" correcto para se dar a conversão!


    Não esqueça de marcar o post como útil caso tenha te ajudado.

    • Marked as answer by Sigrids LIma Tuesday, December 18, 2012 6:40 PM
    Tuesday, December 18, 2012 6:27 PM

All replies

  • Se tiver a certeza que o texto da textbox esta no formato correcto pode fazer:

    DateTime vencimento = DateTime.Parse(textbox1.Text);

    Pode também usar o DateTime.TryParse.

    O segundo caso é igual, passa o texto da textbox:

     Boleto b = new Boleto(vencimento, textboxValor.Text, "16", "09876543210", c);

    Precisa  de ter cuidado com o tipo de dados que esta lidando. O text da textbox é um string, caso precise de um float ou decimal tem de converter o conteúdo.


    Não esqueça de marcar o post como útil caso tenha te ajudado.

    • Marked as answer by Sigrids LIma Tuesday, December 18, 2012 6:25 PM
    Tuesday, December 18, 2012 4:05 PM
  • Marco obrigado pela sua colaboração, clariou as minhas ideias, ve se essa e a forma correta:

    DateTime vencimento = DateTime.Parse(txtVencimento.Text);
            String valorBoleto = txtValor.Text;

    Cedente c = new Cedente("12.827.813/0001-39", "EG Informática", "2182", "2", "12615", "2", "");
            Boleto b = new Boleto(Convert.ToDateTime(vencimento),  Convert.ToDouble(valorBoleto), "16", "09876543210", c);

    Ate

    Tuesday, December 18, 2012 6:21 PM
  • Se o valor pretendido for um double sim.

    Chamo mais uma vez a atenção das conversões que por vezes podem falhar quando o texto das textboxs não esta no "formato" correcto para se dar a conversão!


    Não esqueça de marcar o post como útil caso tenha te ajudado.

    • Marked as answer by Sigrids LIma Tuesday, December 18, 2012 6:40 PM
    Tuesday, December 18, 2012 6:27 PM