none
HACER QUE UN DATAGRIDVIEW ACEPTE LA BARRA ( / ) PARA PODER FRACCIONAR UN PRECIO RRS feed

  • Pregunta

  • Muy buenos días tengan Uds amigos del foro. Hoy mas que un problema traigo un desafió, por que para mi lo es.

    Mi problema es el siguiente y voy a tratar de ser lo mas claro posible, y me voy a valer de la siguiente imagen.

    Como verán en el datagridview de la imagen cargue los mismos productos para que vean a modo de ejemplo lo que necesito en particular, lo marcado con rojo es un campo que indica que el producto en cuestión se puede fraccionar, o sea que si esta marcado como en el caso del producto 2 significa que acepta la fracción, hasta aquí la parte fácil ya que este campo lo cargo de la base de datos y funciona perfecto, ahora la parte difícil de lo que quiero hacer.

    Básicamente lo que necesito es que si el producto no esta tildado, en el campo remarcado con azul en el grid se inhabilite y no se pueda ingresar la barra (/), pero si lo esta como el caso del producto 2 se habilite dicho campo para poder ingresar (/) y realizar los cálculos como se ven en dicho producto, otro problema que tengo es que no he podido hacer que solo dicha barra me aparezca (/), osea que si ingreso el asterisco (*) me lo acepta también, yo solo quiero la barra (/) este habilitada para su ingreso y la ultima consulta es que si el producto esta marcado cuando se carga en el grid por lógica se debe cargar con el precio total y solo cuando se ingrese la (/) se fraccione el precio de acuerdo a cuanto se ingresa en la (cant).

    Desde ya muchísimas gracias por su tiempo y espero me puedan dar una solución a este problema. 

    martes, 1 de octubre de 2019 11:20

Respuestas

Todas las respuestas

  • Hola   dj mac40

     

    Gracias por levantar tu consulta en los foros de MSDN. Con respecto a la misma,  te comparto a continuación los sigueintes enlaces en los cuales son documentación y casos similares que nos estas reportando

     

     https://social.msdn.microsoft.com/Forums/es-ES/d97af6f4-5e1c-4e0b-bbbb-d22aae98de1d/dar-formato-numero-a-columna-de-gridview?forum=vbes

    https://social.msdn.microsoft.com/Forums/es-ES/7b045b6a-34bb-4d81-910a-e7505d11474f/formato-numerico-datagridview-vbnet?forum=vbes

     

    Gracias por usar los foros de MSDN.

     

    Pablo Rubio

     

     ____

     

    Por favor recuerde "Marcar como respuesta" las respuestas que hayan resuelto su problema, es una forma común de reconocer a aquellos que han ayudado, y hace que sea más fácil para los otros visitantes encontrar la solución más tarde. 

     

    Microsoft ofrece este servicio de forma gratuita, con la finalidad de ayudar a los usuarios y la ampliación de la base de datos de conocimientos relacionados con los productos y tecnologías de Microsoft.  

     

    Este contenido es proporcionado "tal cual" y no implica ninguna responsabilidad de parte de Microsoft.

    • Marcado como respuesta dj mac40 lunes, 7 de octubre de 2019 10:59
    miércoles, 2 de octubre de 2019 15:32
  • Muy buenos días amigo Pablo Rubio muchísimas gracias por responder a mi consulta. Antes que nada te pido disculpa por no poder haber respondido antes pero tuve problemas con mi Internet.

    Si bien los enlaces que me sugeriste no eran lo que en realidad yo necesito me orientaron a poder encontrar el siguiente codigo que me sirvio para poder hacer lo que buscaba en el grid:

    Private Sub DgvContactos_EditingControlShowing(sender As Object, e As DataGridViewEditingControlShowingEventArgs) Handles DgvContactos.EditingControlShowing
            Try
                RemoveHandler e.Control.KeyPress, AddressOf typeOnlynumbers
                AddHandler e.Control.KeyPress, AddressOf typeOnlynumbers
            Catch ex As Exception
                MessageBox.Show("Error")
            End Try
        End Sub

        Sub typeOnlynumbers(ByVal sender As Object, ByVal e As System.Windows.Forms.KeyPressEventArgs)
            If Asc(e.KeyChar) >= 0 And Asc(e.KeyChar) <= 46 Or Asc(e.KeyChar) >= 48 Then
                e.Handled = True
            End If
        End Sub

    Como verán usando el codigo ascii de las teclas solo me permite ingresar la tecla (/) en el campo (Fracc) marcado con azul en la imagen que subí en mi consulta, pero este código me bloquea también el campo (Cant) y yo necesito ingresar la cantidad del producto a fraccionar, como puedo hacer para que este código me tome solo el campo (Fracc) y no me bloquee el campo (Cant).

    Te agradecería muchísimo amigo Pablo Rubio si me puedes brindar una solución pronta a este problema.

     

    lunes, 7 de octubre de 2019 11:25