2010-10-07 3 views
2

J'ai une vue de grille de données sur un formulaire, et je veux qu'une cellule spécifique dans la première rangée soit en mode d'édition quand le formulaire s'ouvre et quand la sélection change. Le selectmode DataGridView est réglé sur « FullRowSelect » et en cas de changement de sélection je le code suivant:DataGridView BeginEdit lorsque le formulaire s'ouvre

if (dgvReconList.SelectedRows.Count == 1) 
{ 
    dgvReconList.CurrentCell = dgvReconList.SelectedRows[0].Cells["colReferralDate"]; 
    dgvReconList.BeginEdit(true); 
} 

Ce code fonctionne comme un charme quand je change la sélection. Le problème est que lorsque j'essaie de définir la cellule souhaitée dans la première ligne en mode d'édition (en utilisant le code ci-dessus) lorsque le formulaire s'ouvre. La première ligne est sélectionnée et la cellule souhaitée est la cellule "en cours", mais elle n'est pas en mode édition. J'ai essayé d'utiliser le code ci-dessus dans l'événement forms activate, l'événement load, et plusieurs autres sans chance.

Comment puis-je obtenir la cellule en mode édition dès que le formulaire s'ouvre?

+0

S'agit-il d'une base de données DGV? – JPReddy

Répondre

1

Faites trois étapes simples.

En cas de charge de forme -> Après le chargement des données dans le DGV

  1. Définissez la propriété DGV EditMode à EditOnEnter.
  2. dgvReconList.CurrentCell = dgvReconList[desiredColumnIndex, 0];
  3. dgvReconList.CurrentCell.Selected = true;

Ceci règlera directement la vente en cours en mode édition.

+0

Brillant! Si simple. Merci pour l'aide! – Jesse

Questions connexes