• Lunes 6 de Mayo de 2024, 04:25

Autor Tema:  Es posible inhabilitar columnas de un datagridview?  (Leído 1241 veces)

tux2003

  • Nuevo Miembro
  • *
  • Mensajes: 12
    • Ver Perfil
Es posible inhabilitar columnas de un datagridview?
« en: Miércoles 29 de Septiembre de 2010, 16:10 »
0
Hola comunidad:

tengo un problema con un contro datagridview. El datagridview tiene 7 columnas y quiero deshabilitar 6 y dejar una disponible es decir que el usuario no pueda dar siquiera clic en las otras columnas y que no se seleccionen los elementos de esas columnas ya estableci su propiedad ReadOnly en true y la propiedad SelectionMode en CellSelect para que solo pueda seleccionar por celda y no por filas pero como puedo bloquearlas en su totalidad? si alguien tiene alguna sugerencia o tuvo un problema similar agradeceria mucho la colaboracion gracias y saludos cordiales

tux2003

  • Nuevo Miembro
  • *
  • Mensajes: 12
    • Ver Perfil
Re: Es posible inhabilitar columnas de un datagridview?
« Respuesta #1 en: Miércoles 29 de Septiembre de 2010, 17:42 »
0
Hola:

Haber creo que no explique bien mi problema porque je en otro foro no me entendieron asi que tratare de exponerlo mejor para ver si puedo recibir ayuda, tengo un code similar a lo siguiente:

Código: vb.net
  1.  
  2. Private Sub tsbPrecios_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles tsbPrecios.Click
  3.    dvgMedidas.SelectionMode=DataGridViewSelectionMode.CellSelect
  4.    StatusControles()
  5. End Sub
  6.  
  7. Private Sub StatusControles()
  8.    dvgMedidas.ReadOnly = False
  9.    tsbNuevo.Visible = Not tsbNuevo.Visible
  10.    tsbModifica.Visible = Not tsbModifica.Visible
  11.    tsbElimina.Visible = Not tsbElimina.Visible
  12.    tsbSalida.Visible = Not tsbSalida.Visible
  13.    tsbPrecios.Visible = Not tsbPrecios.Visible
  14.    tsbAplicar.Visible = Not tsbAplicar.Visible
  15.    ToolStripSeparator1.Visible = Not ToolStripSeparator1.Visible
  16.    ToolStripSeparator2.Visible = Not ToolStripSeparator2.Visible
  17.    tsbCancelar.Visible = Not tsbCancelar.Visible
  18.    txtFiltro.Enabled = Not txtFiltro.Enabled
  19.    dvgMedidas.Columns("Nombre Material").ReadOnly = True
  20.    dvgMedidas.Columns("Descripcion").ReadOnly = True
  21.    dvgMedidas.Columns("Ancho").ReadOnly = True
  22.    dvgMedidas.Columns("Largo").ReadOnly = True
  23.    dvgMedidas.Columns("Peso").ReadOnly = True
  24. End Sub
  25.  
  26. Private Sub tsbCancelar_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles tsbCancelar.Click
  27.    dvgMedidas.SelectionMode=DataGridViewSelectionMode.FullRowSelect
  28.    StatusControles()
  29.    dvgMedidas.Columns("Costo").ReadOnly = True
  30. End Sub
  31.  
  32. Private Sub tsbAplicar_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles tsbAplicar.Click
  33.    If Not bolEditando Then
  34.      GuardaCostos()
  35.      dvgMedidas.SelectionMode=DataGridViewSelectionMode.FullRowSelect
  36.      StatusControles()
  37.      dvgMedidas.Columns("Costo").ReadOnly = TrueEnd Sub
  38.    End If
  39. End Sub
  40.  
  41.  

como podran observar ya puse TODAS las columnas que no quiero que se modifiquen en modo solo lectura y la de costos se quedo en modo de modificar o editar que esa es la que podra editar el usuario pero si el usuario da click en alguno de los elementos de las columnas bloquedas puede seleccionarlo con esto no quiero decir que lo pueda editar pues esta en modo lectura pero si pierde el foco la columna que debe editarse y eso es lo que no quiero..... Pretendo que las columnas que estan en modo lectura no puedan seleccionarse que esten bloqueadas por completo amm no se si esta vez me explique mejor saludos cordiales y ojala puedan ayudarme :)