none
consulta llenado mask text box c# visual studio RRS feed

  • Pregunta

  • hola estoy usando un mastextbox para DNI y para la carga de datos no hay inconvenientes el tema está cuando leo datos por ejemplo un DNI 03210920 en el mastextbox se ve como 32.109.20_ cosa que queda fea, mi duda es esto tengo que formatearlo yo desde código controlando la cantidad de caracteres y en base a eso ubicarlos o hay una alternativa mas óptima??

    PD: la mascara que uso es 90.000.000 para el primer carácter numérico sea opcional

    domingo, 25 de marzo de 2018 21:28

Respuestas

  • lo pude solucionar usando el metodo Padleft(int tamaño_string, char caracter) donde le pasas el ancho del string y el caracter a añadir del lado izquierdo
    domingo, 25 de marzo de 2018 23:38

Todas las respuestas

  • ¿Opcional y cero es lo mismo?  Porque tenemos 1 de 2 posibilidades:

    1. El MaskedTextBox elimina el primer dígito basándose en el hecho de que cero se considera número opcional.
    2. Usted guarda el DNI como número o se lo pasa a la casilla de texto como número, y como bien sabemos, un cero a la izquierda y nada es lo mismo.

    Si es la opción 2, necesita convertir el número a texto antes de pasarlo a la casilla de texto.  Ah y concatenar el cero a la izquierda.


    Jose R. MCP
    Code Samples


    domingo, 25 de marzo de 2018 22:34
    Moderador
  • ¿Opcional y cero es lo mismo?  Porque tenemos 1 de 2 posibilidades:

    1. El MaskedTextBox elimina el primer dígito basándose en el hecho de que cero se considera número opcional.
    2. Usted guarda el DNI como número o se lo pasa a la casilla de texto como número, y como bien sabemos, un cero a la izquierda y nada es lo mismo.

    Si es la opción 2, necesita convertir el número a texto antes de pasarlo a la casilla de texto.  Ah y concatenar el cero a la izquierda.


    Jose R. MCP
    Code Samples


    es la opción 2, el dni lo guardo como INT y me lo guarda sin el 0 a la izquierda, lo cual es correcto, por eso el problema no es al guardar datos sino al mostrarlos en el masktextbox cuando se da el caso mencionado
    domingo, 25 de marzo de 2018 23:11
  • lo pude solucionar usando el metodo Padleft(int tamaño_string, char caracter) donde le pasas el ancho del string y el caracter a añadir del lado izquierdo
    domingo, 25 de marzo de 2018 23:38
  • Correcto.  Cuando le di las opciones, también le dije que si era la opción 2, tenía que convertir a texto y agregar el cero.

    Jose R. MCP
    Code Samples

    lunes, 26 de marzo de 2018 0:11
    Moderador
  • Pienso que el tipo de dato que contiene el número de documento debería ser un tipo de cadena de caracteres (varchar()) que permita almacenar el valor tal y como corresponda incluyendo los ceros a la izquierda, de no hacerlo así, por cada vez que quieras presentar o comparar un valor (ya sea en tu aplicación o en base de datos) vas a tener que, bajo cualquier forma, concatenar los ceros a la izquierda en caso sea necesario. ¿Y si olvidas hacerlo en algún lugar?

    lunes, 26 de marzo de 2018 0:27