CLR: .Net / Mono / Boo / Otros CLR > VB .NET

 Marcar Linea En Datagridview

(1/1)

Sagma:
que tal, estoy programando con VB 2005, y quisiera poder marcar toda una fila en el DataGridView.

con el 2003, yo hacia:


--- Código: Text ---     Private Sub DataGrid1_MouseUp(ByVal sender As Object, ByVal e As System.Windows.Forms.MouseEventArgs) Handles DataGrid1.MouseUp         Dim pt = New Point(e.X, e.Y)        Dim hti As DataGrid.HitTestInfo = DataGrid1.HitTest(pt)         If hti.Type = DataGrid.HitTestType.Cell Then            DataGrid1.CurrentCell = New DataGridCell(hti.Row, hti.Column)            DataGrid1.Select(hti.Row)        End If     End Sub  
ahora con el 2005, solo cambio el DataGrid por el DataGridView.

me sale un mensaje de error en esta linea:

DataGrid1.HitTest(pt) --//-- no se ha especicado ningun argumento para el parametro.

Gracias por la colaboración.

Mollense:
Esta es una forma:

1) Necesitás cambiar el valor de la propiedad "SelectionMode" del DataGridView a "FullRowSelect"

2) En C#, la selección la hago de esta manera:

--- Código: Text ---DataGridView1.CurrentCell = DataGridView1.Rows[filaASeleccionar].Cells[0]; 
Supongo que en VB.NET será algo así:


--- Código: Text ---DataGridView1.CurrentCell = DataGridView1.Rows(filaASeleccionar).Cells(0) 
Un saludo

Sagma:
gracias mi querido Mollense:

pero fijate encontre este ejemplo y he aumentado algunas cosas y sale de perrilas, como lo quiero:


--- Código: Text ---    Private Sub StyleDataGridView()        Try            With DataGridView1  'o el nombre de tu grilla                 'Color general de la grilla                .DefaultCellStyle.BackColor = Color.LightSteelBlue                 'Color de celdas alternadas                .AlternatingRowsDefaultCellStyle.BackColor = Color.White                 'Activacion de autosize del ancho de columnas                '.ColumnHeadersHeightSizeMode = DataGridViewColumnHeadersHeightSizeMode.AutoSize                '.AutoSizeColumnsMode = DataGridViewAutoSizeColumnsMode.AllCells                 'Estilo y color de las Columnas encabezado                .ColumnHeadersDefaultCellStyle.BackColor = Color.Navy                .ColumnHeadersDefaultCellStyle.ForeColor = Color.White                .ColumnHeadersBorderStyle = DataGridViewHeaderBorderStyle.None                .ColumnHeadersHeightSizeMode = DataGridViewColumnHeadersHeightSizeMode.DisableResizing                '.SortOrder.Non = True                 'Estilo y color de las Filas Encabezado                .RowHeadersDefaultCellStyle.BackColor = Color.Navy                .RowHeadersDefaultCellStyle.ForeColor = Color.White                .RowHeadersBorderStyle = DataGridViewHeaderBorderStyle.None                .RowHeadersWidthSizeMode = DataGridViewRowHeadersWidthSizeMode.AutoSizeToFirstHeader                 'Seleccionando toda la fila                .SelectionMode = DataGridViewSelectionMode.FullRowSelect                 'Color de fila seleccionada                .DefaultCellStyle.SelectionBackColor = Color.Cyan                .DefaultCellStyle.SelectionForeColor = Color.Red                 'Color de la Fila Encabezado Seleccionada                .RowHeadersDefaultCellStyle.SelectionBackColor = Color.Goldenrod                .RowHeadersDefaultCellStyle.SelectionForeColor = Color.White                 'Propiedades del DataGridView                .EnableHeadersVisualStyles = False                .AllowUserToAddRows = False 'El usuario no puede adicionar una fila                '.AllowUserToResizeRows = False 'El usuario no podra ajustar en ancho de la fila                .MultiSelect = False 'El usuario no puede seleccionar mas de una fila                .ReadOnly = True 'Toda la grilla es de solo lectura, no es editable.                'establecer el puntero en una fila, en este caso estara en la fila 2                .CurrentCell = Me.DataGridView1.Item(0, 1)                .Rows(1).Selected = True                 'Color general de la grilla                .DefaultCellStyle.BackColor = Color.Yellow                 'Color de celdas alternadas                .AlternatingRowsDefaultCellStyle.BackColor = Color.White                 'La propiedad defaultCellStyle.BackColor, determina que toda la grilla                'sea de color LigthSteelBlue y la  propiedad                'AlternatingRowsDefaultCellSyle.BackColor, hace q intercale el color                'WHite por cada celda impar, haciendo q la primera sea SteelBlue, luego                'White, Luego SteelBlue, White, y asi sucesivamente.                  .Columns("vtaclicorr").HeaderText = "Codigo" & vbCrLf & "esto va abajo"                .Columns("vtaclinomb").HeaderText = "Nombres"                .Columns("vtacliapel").HeaderText = "Apellidos"                .Columns("vtaclitelf").HeaderText = "Telefono"                 .Columns("vtaclicorr").Width = 50                .Columns("vtaclinomb").Width = 250                .Columns("vtacliapel").Width = 250                .Columns("vtaclitelf").Width = 100            End With        Catch ex As Exception            Throw        End Try    End Sub  
gracias.  :comp:

Navegación

[0] Índice de Mensajes

Ir a la versión completa