2008-09-18 5 views
1

J'ai un DataGridView qui accepte une liste (de myObject) comme source de données. Je veux ajouter une nouvelle ligne à la grille de données à ajouter à la base de données. Je fais cela en obtenant la liste ... en ajoutant un myObject vide à la liste et en réinitialisant la source de données. Je veux maintenant mettre l'accent sur la deuxième cellule de la nouvelle rangée.Définition du focus dans un formulaire datagridview sous Windows

Pour EXPLIQUER je suis en train de mettre l'accent

Répondre

4

Vous pouvez définir le focus sur une cellule spécifique d'une ligne, mais uniquement si le SelectionMode de DataGridView est défini sur CellSelect. S'il est, il suffit de faire ce qui suit:

dataGridView.Rows[rowNumber].Cells[columnNumber].Selected = true; 
0

En WinForms, vous devriez être en mesure de mettre à la ligne que vous voulez choisi le

Me.dataEvidence.SelectedRows 

propriété.

+0

SelectedRows est en lecture seule. Ce n'est pas possible de le définir. –

0

Dans Visual Studio 2012 (vb.NET cadre 4,50), vous pouvez régler la mise au point sur une cellule souhaitée d'un contrôle DataGridView.

Essayez ceci:

Sub Whatever() 

    ' all above code 

    DataGridView1.Focus() 
    DataGridView1.CurrentCell = DataGridView1.Rows(x).Cells(y)  'x is your desired row number, y is your desired column number 

    ' all below code 

End Sub 

D'accord, cela fonctionne pour moi. J'espère que cela fonctionne pour vous aussi.

Questions connexes