none
Pasar valor para formatear un número RRS feed

  • Pregunta

  • Hola 

    Estoy trabajando en una app(escritorio) Visual Studio 2012

    Lo que intento es darle formato a un número pero pasandole el tamaño del campo desde un enum que lo tengo declarado a nivel de namespace.

    public enum TablaPersonal
        {
            Personal = 1,
            TamañoCampo = 4
        }

    En el formulario Personal tengo esto :

    Declarado a nivel de formulario

    TablaPersonal TamañoCampo = TablaPersonal.TamañoCampo;


    El método buscar tengo esto :

    public void Buscar()
            {
                frmInputBox frm = new frmInputBox(nomForm, tabla, TamañoCampo);
                frm.ShowDialog();
            }

    En el formulario inputBox tengo esto :

     private MantenedorActivoBuscar Table;
            TablaPersonal TamañoCampo;
    
            public frmInputBox()
            {
                InitializeComponent();
            }
    
            public frmInputBox(string title, MantenedorActivoBuscar table, TablaPersonal tamañoCampo)
            {
                InitializeComponent();
                
                Title = title;
                Table = table;
                TamañoCampo = tamañoCampo;
            }

    Evento txtDescripcion keypres

    private void txtDescipcion_KeyPress(object sender, KeyPressEventArgs e)
            {
                int codigo;
                if (txtDescipcion.Text != "" & e.KeyChar == (int)Keys.Enter)
                {
                    string formato = new string('0', TamañoCampo); ==> Lo reconoce como matriz no como un int
                    codigo = Convert.ToInt32(txtDescipcion.Text);
                   
                    txtDescipcion.Text = string.Format("{0:" + formato + "}", codigo);
               
                    Utilidades _Utilidades = new Utilidades();
                    if(_Utilidades.isNumberEntero(txtDescipcion.Text) == true)
                    {
                        Helper.IdRows = txtDescipcion.Text;
                        this.Close();
                    }
                    else
                    {
                        this.Hide();
                        _Utilidades.InputBox(Dato, Title, Table);
                    }
                }
            }
    Quiero pasarle el valor del tamaño del campo pero desde el enum que tengo declarado a nivel de namespace.

     

    Pedro Ávila
    "El hombre sabio querrá estar siempre con quien sea mejor que él."
    Lima - Perú

    domingo, 20 de octubre de 2013 17:02

Respuestas

  • pero no tendrias que usas

    string formato = new string('0', (int)TamañoCampo);

    o sea se debe obtener el valor numerico asociado al enum

    saludos


    Leandro Tuttini

    Blog
    Buenos Aires
    Argentina

    • Marcado como respuesta Pedro Ávila domingo, 20 de octubre de 2013 17:20
    domingo, 20 de octubre de 2013 17:10

Todas las respuestas

  • pero no tendrias que usas

    string formato = new string('0', (int)TamañoCampo);

    o sea se debe obtener el valor numerico asociado al enum

    saludos


    Leandro Tuttini

    Blog
    Buenos Aires
    Argentina

    • Marcado como respuesta Pedro Ávila domingo, 20 de octubre de 2013 17:20
    domingo, 20 de octubre de 2013 17:10
  • otro consejo defines con diferentes nombres los tipos de datos y las variables

    por ejemplo

    public enum TablaPersonalEnum
    {
       Personal = 1,
       TamañoCampo = 4
    }

    saludos


    Leandro Tuttini

    Blog
    Buenos Aires
    Argentina

    domingo, 20 de octubre de 2013 17:15
  • Gracias Leandro 

    Pedro Ávila
    "El hombre sabio querrá estar siempre con quien sea mejor que él."
    Lima - Perú

    domingo, 20 de octubre de 2013 17:19