Comment définir le DataGridView CurrentRow
La définition de la ligne actuelle d'un contrôle "DataGridView" dans votre application C# peut être quelque peu déroutante si vous n'êtes pas familier avec la propriété "CurrentCell". La propriété "CurrentCell" affichera la cellule sélectionnée si elle n'est pas actuellement affichée. Les programmeurs oublient souvent de rafraîchir leur "DataGridView" après avoir sélectionné une ligne. La propriété "CurrentRow" localise la ligne contenant la cellule courante.
Étape 1
Ouvrez Microsoft Visual Studio et cliquez sur "Nouveau projet…" dans le volet gauche de votre écran. Développez "Autres langues", développez "Visual C#" et cliquez sur "Windows". Double-cliquez sur "Application Windows Forms" pour créer un nouveau projet.
Étape 2
Double-cliquez sur "DataGridView" dans le volet "Boîte à outils" pour en ajouter un à votre formulaire. Double-cliquez sur "Bouton" pour ajouter un nouveau bouton.
Étape 3
Double-cliquez sur le formulaire pour créer un événement de chargement de formulaire. Copiez et collez le code suivant pour remplir le contrôle "DataGridView" avec quatre lignes de données :
dataGridView1.ColumnCount =3 ; dataGridView1.Columns[0].Name ="ID" ; dataGridView1.Columns[1].Name ="Nom" ; dataGridView1.Columns[2].Name ="Prix" ;
string[] row = new string[] { "1", "Item 1", "150" }; dataGridView1.Rows.Add(row); row = new string[] { "2", "Item 2", "250" }; dataGridView1.Rows.Add(row); row = new string[] { "3", "Item 3", "125" }; dataGridView1.Rows.Add(row); row = new string[] { "4", "Item 4", "75" }; dataGridView1.Rows.Add(row);
Étape 4
Revenez à la conception de formulaire et double-cliquez sur "bouton1" pour créer un événement de clic pour ce bouton. Copiez et collez le code suivant pour définir la ligne numéro 3 comme ligne actuelle :
dataGridView1.FirstDisplayedScrollingRowIndex =dataGridView1.Rows[2].Index ; dataGridView1.Refresh(); dataGridView1.CurrentCell =dataGridView1.Rows[2].Cells[1] ; dataGridView1.Rows[2].Selected =vrai ; MessageBox.Show ( dataGridView1.CurrentRow.Index.ToString());