Visual Basic.NET - Checkbox

 
Vista:
sin imagen de perfil

Checkbox

Publicado por Alfredo (14 intervenciones) el 13/05/2014 23:58:39
Hola buen día!
Lo que pasa es que estoy en un modulo de permisos de un sistema, tengo un datagridview con 3 columnas y 12 filas.
La columna uno es el id, la segunda es el nombre del permiso, y la 3 viene con 12 checkbox que pertenecen alas 12 filas.
Lo que pasa es que como en la fila 0 (row 0) osea la primera fila que viene siendo la cero, tiene como nombre "Pestaña" que pertenece a una pestaña del sistema, la fila 5 tiene como nombre "Botón imprimir", lo que yo quiero hacer es que si el usuario selecciona el checkbox 5 que es el de imprimir, tiene que seleccionar la de fila 0 que es la de pestaña porque de que sirve habilitar el botón imprimir si no puede accesar a la pestaña.
Entonces yo quiero que al momento de seleccionar algun otro checkbox que se seleccione el checkbox de pestaña al mismo tiempo que se seleccione otro.
Yo intente agregar el codigo haciendo doble clic en el datagridview y asi es como hice el codigo

If DataGridView2.Rows(1).Cells(2).Value = True Or DataGridView2.Rows(2).Cells(2).Value = True Or DataGridView2.Rows(6).Cells(2).Value = True Or DataGridView2.Rows(7).Cells(2).Value = True Or DataGridView2.Rows(8).Cells(2).Value = True Or DataGridView2.Rows(9).Cells(2).Value = True Or DataGridView2.Rows(10).Cells(2).Value = True Or DataGridView2.Rows(11).Cells(2).Value = True Then
DataGridView2.Rows(0).Cells(2).Value = True

ElseIf DataGridView2.Rows(1).Cells(2).Value = False And DataGridView2.Rows(2).Cells(2).Value = False And DataGridView2.Rows(6).Cells(2).Value = False And DataGridView2.Rows(7).Cells(2).Value = False And DataGridView2.Rows(8).Cells(2).Value = False And DataGridView2.Rows(9).Cells(2).Value = False And DataGridView2.Rows(10).Cells(2).Value = False And DataGridView2.Rows(11).Cells(2).Value = False Then
DataGridView2.Rows(0).Cells(2).Value = False
End If

obiamente yo en mi codigo tengo en el if agregado las 12 filas,, en el primer if le digo que si minimo un checkbox de la 3era columna del grid esta seleccionado que se selecciona la primera ( DataGridView2.Rows(0).Cells(2).Value = True es el Row(0)).
En el ElseIf le digo que si estan todos los checkbox en False, entonces que se ponga el checkbox de pestaña en false en automatico sin que yo le tenga que dar click.

Adecuenta que ese codigo si lo hace pero por ejemplo, cuando al momento de ejecutar el proyecto, cuando abro el formulario y en el grid no tengo seleccionado ningun checkbox (incluyendo el checkbox de pestaña), si yo marco por ejemplo la ultima opcion, en ese momento como ya seleccione una como minimo, una entonces quiero que se seleccione la de pestaña sola sin que yo le tenga que dar clic, pero no lo hace, solo lo hace cuando vuelvo a seleccionar otro checkbox, entonces en ese momento ya se selecciona automaticamente la opcion de pestaña, pero no quiero eso :( quiero que se seleccione al mismo tiempo que cuando le estoy dando clic a cualquier otra y biseversa :(


Saludos! aver si me pueden ayudar :(
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder
sin imagen de perfil

Checkbox

Publicado por Pico (167 intervenciones) el 14/05/2014 11:55:44
No lo hace cuando seleccionas otro checkbox sino cuando sales del anterior. Una columna checkbox acepta el nuevo valor cuando sales de la celda, no antes,
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
sin imagen de perfil

Checkbox

Publicado por Alfredo (14 intervenciones) el 14/05/2014 16:46:23
Pero tiene que poderse no? osea tiene que aver un codigo que haga que se seleccione otro checkbox al mismo tiempo en que yo seleccione otro,,, o noo?
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
sin imagen de perfil

Checkbox

Publicado por Pico (167 intervenciones) el 14/05/2014 17:02:24
A ver si es que no has explicado bien el problema, o yo no lo he entendido o no has entendido tú mi respuesta.

Dices:
si yo marco por ejemplo la ultima opcion, en ese momento como ya seleccione una como minimo, una entonces quiero que se seleccione la de pestaña sola sin que yo le tenga que dar clic, pero no lo hace, solo lo hace cuando vuelvo a seleccionar otro checkbox, entonces en ese momento ya se selecciona automaticamente la opcion de pestaña, pero no quiero eso :( quiero que se seleccione al mismo tiempo que cuando le estoy dando clic a cualquier otra y biseversa :(

Y yo te digo:
cuando marcas un checkbox en una fila de un datagridview, el cambio de valor de la celda, el evento de cambio, lo que sea, sólo se produce cuando sales de esa celda, no antes. No se produce en el momento en el que ves que cambia la imagen del checkbox, sino cuando salgas de la celda. Por eso ves que lo hace cuando seleccionas otro checknox, pero no porque selecciones otro checbox, sino porque sales de la celda anterior.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar