Cita:
Iniciado por Dradi7
puedes poner tu codigo para poder como estas haciendolo
Hi
Dradi7 gracias !!!...
Aca te colocó el código que uso en el evento Load() del form VentanaCargarAlumnos
Private Sub VentanaCargarAlumnos_Load(ByVal sender ...) Handles MyBase.Load
'AjustarCeldas = True
Me.MdiParent = VentanaPrincipal 'Formulario MDI
'***********************************************
DataGridCargarAlumno.Columns.Clear()
'*****************************************
Call BD.conectarBD() 'LLAMAR AL MODULO PARA CONECTAR LA BD
'************************************************
'CREACION DE LA COLUMNA CON EL CHECKBOX
Obj = Col
Obj.HeaderText = "Estado" ' el texto que ira en la cabecera
Obj.Name = "Estado" ' Nombre de la Columna de la Grilla
Obj.Width = 50
DataGridCargarAlumno.Columns.Add(Obj)
DataGridCargarAlumno.Columns(DataGridCargarAlumno. Columns.Count - 1).DisplayIndex = 0
' Es para que la columna sea la primera en la grilla
DataGridCargarAlumno.ReadOnly = False ' Esto para que toda la grilla sea editable
DataGridCargarAlumno.DataSource = Nothing ' al inicio no va ningun enlaze de datos
'***********************************************
If Opcion = 1 Then
Id = VentanaOpcionGrupo.TextId.Text 'toma el codigo del grupo nuevo
SQL = "SELECT CedAlumno AS 'Cédula', NomAlumno AS 'Nombre', EspAlumno AS 'Especialidad', ALUMNO.IdGrupo AS 'Código Grupo' FROM ALUMNO WHERE IdGrupo='00'"
'el grupo 00 es grupo especial que se le asigna a los alumnos al cargarlos por primera vez.
'los selecciono a ellos para seleccionar justamente los que no tengan grupos para asignarles el grupo que estoy creando.
Else
Id = VentanaOpcionGrupo.LabelId.Text ' toma el codigo del grupo existente
SQL = "SELECT CedAlumno AS 'Cédula', NomAlumno AS 'Nombre', EspAlumno AS 'Especialidad', ALUMNO.IdGrupo AS 'Código Grupo' FROM GRUPO inner join ALUMNO ON GRUPO.IdGrupo=ALUMNO.IdGrupo WHERE GRUPO.IdGrupo='" & Id & "' OR ALUMNO.IdGrupo='00'"
'aca cargo los alumnos que no tienen grupo
'y ademas los alumnos que pertenecen a el grupo que voy a modificar
End If
'****************************
'datagridCargarAlumno
Call BD.CargarDataGrid(OrigendeDatos, myAdapter, myTable, DataGridCargarAlumno, SQL) 'LLAMAR AL MODULO PARA CARGAR EL DATAGRID
'************************************************* ************************************************** ****************************
'************************************************* ********************************************
' Este for es para que solo sea editable el checkbox de la grilla es decir poder hacerle click
For Col As Integer = 0 To DataGridCargarAlumno.Columns.Count - 1
If Not Col = 0 Then
DataGridCargarAlumno.Columns(Col).ReadOnly = True
End If
Next
'************************************************* ******************
For Each Row As DataGridViewRow In DataGridCargarAlumno.Rows
If Convert.ToString(Row.Cells(4).Value) = IdGrupo Then ' suponiendo que sea la ultima columna
Row.Cells(0).Value = True ' suponiendo que sea la columna del check
'Row.Cells(1).Value = "hola!!!"
Else
Row.Cells(0).Value = False
End If
' Label1.Text = Convert.ToString(Row.Cells(4).Value)
Next
'******* ESTO ES LO QUE ESTUVE TRATANDO DE HACER PARA VARIAR ********
'Dim variable As String
''MsgBox("Id del Grupo Existente= " & IdGrupo)
'For i As Integer = 0 To Me.DataGridCargarAlumno.Rows.Count - 1
' variable = DataGridCargarAlumno.Rows(i).Cells(4).Value
' ' MsgBox("variable= " & variable)
' If variable = IdGrupo Then
' DataGridCargarAlumno.Rows(i).Cells(0).Value = True
' ' MsgBox(DataGridCargarAlumno.Rows(i).Cells(0).Value )
' ' MsgBox("culpe")
' Else
' DataGridCargarAlumno.Rows(i).Cells(0).Value = False
' ' MsgBox(DataGridCargarAlumno.Rows(i).Cells(0).Value )
' ' MsgBox("no cumple")
' End If
'Next
'************************************************* *******
End Sub
Trate de escribir lo que trato de hacer en cada línea de código.
Saludos y Exito
Aca tambien adjunto el módulo para cargar el DataGrid:
Sub CargarDataGrid(ByVal OrigendeDatos As Windows.Forms.BindingSource, ByVal myAdapter As SqlDataAdapter, ByVal myTable As DataTable, ByVal DataGridGrupo As Object, ByVal SQL As String)
OrigendeDatos = New Windows.Forms.BindingSource 'instanciando a la clase. creando una nueva instancia
'************************************************* ************************************************** **
myAdapter = New SqlDataAdapter(SQL, myConn) 'Crear un DataAdapter y
'pasarle el comando para traer los registros
'************************************************* ************************************************** **
myAdapter.Fill(myTable) ' lleno la tabla con los registros que me generan myAdaptar
'************************************************* ************************************************** **
OrigendeDatos.DataSource = myTable 'Enlazar el DataTable al BindingSource
'************************************************* ************************************************** **
DataGridGrupo.DataSource = OrigendeDatos.DataSource 'Propiedades para el DataGridview
End Sub