Contrôle DataGrid pour les utilisateurs de Visual Basic 6.0
Mise à jour : novembre 2007
Le contrôle DataGrid de Visual Basic 6.0 est remplacé par le contrôle Windows Forms DataGridView dans Visual Basic 2008. Les noms de certains événements, propriétés, méthodes et constantes ont changé. En outre, dans certains cas, leur comportement est également différent.
Différences conceptuelles
Liaison de données
Le contrôle Visual Basic 2008DataGridView ne demande ni méthode, ni événement spécifique aux données, car toutes les actions sont exécutées via la source de données. En raison de cette séparation entre la fonctionnalité des données et la présentation, la source de données peut être modifiée avec ou sans action dans l'interface utilisateur. En outre, plusieurs contrôles liés à la même source de données seront toujours synchronisés.
Navigation
Les propriétés pour l'affichage et la navigation présentes dans le contrôle DataGrid (notamment TabAction, EnterAction, AllowArrows, WrapCellPointer et Scrollable) ne sont plus nécessaires. Par exemple, la grille fonctionne comme si la propriété Scrollable avait pour valeur True : si la quantité de données est telle qu'elles ne peuvent pas s'afficher intégralement, une barre de défilement est ajoutée automatiquement. Par défaut, la navigation dans la grille est similaire à celle qui est proposée par Excel : l'utilisateur peut avancer à l'aide la touche TAB et reculer à l'aide de la combinaison de touches MAJ+TAB. Pour plus d'informations, consultez Gestion par défaut du clavier et de la souris dans le contrôle DataGridView Windows Forms.
Propriété Caption
Dans Visual Basic 6.0, la propriété Caption est utilisée pour afficher une barre de titre au-dessus de la grille ; si la propriété Caption n'est pas définie, aucune barre de titre ne s'affiche.
Le contrôle Visual Basic 2008DataGridView ne prend pas en charge une barre de titre. Toutefois, vous pouvez obtenir le même effet à l'aide d'un contrôle Label.
Mise en forme de données
Dans Visual Basic 6.0, la mise en forme des données dans le contrôle DataGrid est gérée à l'aide de la propriété DataFormat et d'un objet StdDataFormat. La mise en forme s'applique une colonne après l'autre.
Dans le contrôle Visual Basic 2008DataGridView, la mise en forme est accomplie à l'aide de la propriété Format d'un objet DataGridViewCellStyle. La mise en forme peut s'appliquer individuellement aux cellules, colonnes ou lignes. Pour plus d'informations, consultez Mise en forme de données dans le contrôle DataGridView Windows Forms.
Propriété hWndEditor
Dans Visual Basic 6.0, la propriété hWndEditor est utilisée pour passer le handle de fenêtre affecté à la fenêtre de modification d'un contrôle DataGrid à un appel d'API Windows.
Le contrôle Visual Basic 2008DataGridView n'a pas de handle de fenêtre distinct en mode édition ; à la place, utilisez la propriété Handle du contrôle DataGridView, ou tout contrôle d'édition incorporé.
Propriété MarqueeStyle
Dans Visual Basic 6.0, la propriété MarqueeStyle contrôle l'aspect d'une cellule ou d'une ligne sélectionnée, en modifiant le style de bordure, en inversant les couleurs de premier plan et d'arrière-plan, ou en appelant une fenêtre de modification.
Il n'y a aucun équivalent direct pour le contrôle Visual Basic 2008DataGridView. Toutefois, vous pouvez obtenir le même effet à l'aide d'une combinaison des propriétés SelectionMode, CellBorderStyle et Format. Pour plus d'informations, consultez Modes de sélection dans le contrôle DataGridView Windows Forms.
Propriétés SelLength, SelStart et SelText
Dans le contrôle Visual Basic 6.0 DataGrid, lorsqu'une cellule entre en mode édition, les propriétés SelLength, SelStart et SelText permettent de définir la position initiale du signe insertion ou de mettre en surbrillance une partie du texte dans la cellule.
Ces propriétés n'existent plus dans le contrôle Visual Basic 2008DataGridView. Les cellules du contrôle DataGridView reposent sur le contrôle TextBox ; en ajoutant un code au gestionnaire d'événements EditingControlShowing, vous pouvez accéder aux propriétés SelectionLength, SelectionStart et SelectedText du contrôle sous-jacent.
Affichages fractionnés
Le contrôle Visual Basic 6.0 DataGrid prend en charge l'affichage fractionné, qui permet à l'utilisateur d'afficher les mêmes données côte à côte. L'objet Split et les propriétés Split, Splits et TabAcrossSplits contrôlent la capacité d'afficher un affichage fractionné.
Ces propriétés n'existent plus dans le contrôle Visual Basic 2008DataGridView. Toutefois, vous pouvez obtenir le même effet à l'aide d'un ou plusieurs contrôles SplitContainer et de plusieurs contrôles DataGridView. Pour dupliquer les fonctionnalités de la propriété TabAcrossSplits, vous pouvez utiliser la propriété StandardTab du contrôle DataGridView.
Modifications apportées au code du contrôle DataGrid
Le code suivant illustre les différences entre Visual Basic 6.0 et Visual Basic 2008 en montrant comment, dans chaque version, mettre en surbrillance le texte d'une cellule lorsqu'un utilisateur sélectionne la cellule dans un contrôle DataGridView.
' Visual Basic 6.0
Private Sub DataGrid1_Click()
DataGrid1.SelStart = 1
DataGrid1.SelLength = DataGrid1.Text
MsgBox("The selected text is " & DataGrid1.SelText)
End Sub
' Visual Basic
Private Sub DataGridView1_EditingControlShowing( _
ByVal sender As Object, ByVal e As System.Windows.Forms. _
DataGridViewEditingControlShowingEventArgs) _
Handles DataGridView1.EditingControlShowing
CType(e.Control, TextBox).SelectionStart = 0
CType(e.Control, TextBox).SelectionLength = Len(CType(e.Control, _
TextBox).Text)
MsgBox("The selected text is " & CType(e.Control, _
TextBox).SelectedText)
End Sub
Équivalences des propriétés, méthodes et événements du contrôle DataGrid
Les tableaux ci-dessous répertorient les propriétés, les méthodes et les événements de Visual Basic 6.0, ainsi que leurs équivalents dans Visual Basic 2008. Ces propriétés, méthodes et événements qui ont les mêmes nom et comportement ne sont pas répertoriés. Sauf indication contraire, toutes les énumérations Visual Basic 2008 sont mappées à l'espace de noms System.Windows.Forms.
Ce tableau fournit des liens vers les rubriques qui expliquent des différences de comportement. Lorsqu'il n'existe pas d'équivalent direct dans Visual Basic 2008, des liens vous renvoient vers des rubriques proposant des alternatives.
Propriétés
Visual Basic 6.0 |
Équivalent Visual Basic 2005 |
||
---|---|---|---|
AddNewMode |
Nouvelle implémentation. Les opérations sur les données sont gérées dans la source de données. Pour plus d'informations, consultez Affichage des données dans le contrôle DataGridView Windows Forms. |
||
Align |
|||
AllowAddNew |
AllowNew (BindingSource) |
||
AllowArrows |
N'est plus une propriété ajustable ; la navigation au moyen des flèches est toujours autorisée. Pour plus d'informations, consultez Gestion par défaut du clavier et de la souris dans le contrôle DataGridView Windows Forms. |
||
AllowDelete |
AllowRemove (BindingSource) |
||
AllowRowSizing |
|||
AllowUpdate |
AllowEdit (BindingSource) |
||
Appearance |
Nouvelle implémentation. Pour plus d'informations, consultez Propriétés Appearance et BorderStyle pour les utilisateurs de Visual Basic 6.0. |
||
ApproxCount |
Nouvelle implémentation. Les opérations sur les données sont gérées dans la source de données. Pour plus d'informations, consultez Affichage des données dans le contrôle DataGridView Windows Forms. |
||
BackColor |
|
||
Bookmark |
Nouvelle implémentation. Vous pouvez désormais accéder directement à tous les éléments. |
||
Caption |
Nouvelle implémentation. Utilisez un contrôle Label pour simuler une barre de titre. |
||
Col |
|||
ColumnHeaders |
|||
Container |
Parent ; hérité de Control. |
||
CurrentCellModified |
|||
CurrentCellVisible |
|
||
DataChanged |
|||
DataFormats |
DataGridViewCellStyle.object.
|
||
DefColWidth |
Width Objet DataGridViewColumn. |
||
DragIcon DragMode |
Nouvelle implémentation. Pour plus d'informations, consultez Fonction de glisser-déplacer pour les utilisateurs de Visual Basic 6.0. |
||
EditActive |
|||
FirstRow |
|||
Font FontBold FontItalic FontName FontSize FontStrikethrough FontUnderline |
|
||
ForeColor |
|
||
HeadFont |
Objet DataGridViewCellStyle.
|
||
HeadLines |
Pas d'équivalent direct. Utilisez la propriété WrapMode de l'objet DataGridViewCellStyle, combinée à ColumnHeadersHeight. |
||
Height |
Height, hérité de la classe Control.
|
||
HelpContextID |
Nouvelle implémentation. Pour plus d'informations, consultez Prise en charge de l'aide pour les utilisateurs de Visual Basic 6.0. |
||
hWnd |
|||
hWndEditor |
Nouvelle implémentation. Utilisez Handle. |
||
Index |
Nouvelle implémentation. Pour plus d'informations, consultez Tableaux de contrôles pour les utilisateurs de Visual Basic 6.0. |
||
Left |
Left, hérité de la classe Control.
|
||
LeftCol |
|||
MarqueeStyle |
Pas d'équivalent direct. Utilisez les propriétés SelectionMode, CellBorderStyle et Format. |
||
RecordSelectors |
|||
Row |
|||
RowDividerStyle |
Propriétés GridColor, CellBorderStyle, RowHeadersBorderStyle et ColumnHeadersBorderStyle. |
||
RowHeight |
|||
SelBookmarks |
Nouvelle implémentation. Vous pouvez désormais accéder directement à tous les éléments. |
||
SelEndCol SelStartCol |
|||
SelLength |
Pas d'équivalent direct. Utilisez la propriété SelectionLength dans le gestionnaire d'événements EditingControlShowing. |
||
SelStart |
Pas d'équivalent direct. Utilisez la propriété SelectionStart dans le gestionnaire d'événements EditingControlShowing. |
||
SelText |
Pas d'équivalent direct. Utilisez la propriété SelectedText dans le gestionnaire d'événements EditingControlShowing. |
||
Split Splits TabAcrossSplits |
Nouvelle implémentation. Les affichages fractionnés ne sont pas directement pris en charge ; utilisez un contrôle SplitContainer. |
||
TabAction |
|||
Tag |
Nouvelle implémentation. |
||
Text |
CurrentCell.Value
|
||
ToolTipText |
Composant ToolTip Pour plus d'informations, consultez Prise en charge des info-bulles pour les utilisateurs de Visual Basic 6.0. |
||
Top |
|
||
VisibleCols |
Méthode DisplayedColumnCount.
|
||
VisibleRows |
Méthode DisplayedRowCount.
|
||
WhatsThisHelpID |
Nouvelle implémentation. Pour plus d'informations, consultez Prise en charge de l'aide pour les utilisateurs de Visual Basic 6.0. |
||
Width |
Width, hérité de la classe Control.
|
||
WrapCellPointer |
Cette propriété n'est plus ajustable ; le comportement par défaut est WrapCellPointer = True. |
Méthodes
Visual Basic 6.0 |
Équivalent Visual Basic 2005 |
||
---|---|---|---|
CaptureImage |
Nouvelle implémentation. La capture du contenu d'un contrôle DataGridView dans un contrôle PictureBox n'est pas prise en charge. |
||
ClearFields |
Nouvelle implémentation. La mise en forme de colonne est automatique en cas de renouvellement de liaison. |
||
ClearSelCols |
|||
ColContaining |
IndexOf (DataGridViewColumnCollection) |
||
Drag |
Nouvelle implémentation. Pour plus d'informations, consultez Fonction de glisser-déplacer pour les utilisateurs de Visual Basic 6.0. |
||
GetBookmark |
Nouvelle implémentation. Les signets ne sont plus pris en charge. |
||
HoldFields |
Nouvelle implémentation. La mise en forme de colonne est conservée en cas de renouvellement de liaison. |
||
Move |
SetBounds, hérité de la classe Control.
|
||
Rebind |
ResetBindings, hérité de la classe Control. |
||
RowBookmark |
Nouvelle implémentation. Les signets ne sont plus pris en charge. |
||
RowContaining |
IndexOf (DataGridViewColumnCollection) |
||
RowTop |
GetContentBounds (DataGridViewCell) |
||
Scroll |
Nouvelle méthode d'implémentation. Utilisez la propriété CurrentCell. |
||
SetFocus |
|||
ShowWhatsThis |
Nouvelle implémentation. Pour plus d'informations, consultez Prise en charge de l'aide pour les utilisateurs de Visual Basic 6.0. |
||
SplitContaining |
Nouvelle implémentation. Les affichages fractionnés ne sont pas directement pris en charge ; utilisez un contrôle SplitContainer. |
||
ZOrder |
Fonctions BringToFront() ou SendToBack() |
Événements
Visual Basic 6.0 |
Équivalent Visual Basic 2005 |
||
---|---|---|---|
AfterColEdit |
|||
AfterColUpdate AfterDelete |
Nouvelle implémentation. Les opérations sur les données sont gérées dans la source de données. Pour plus d'informations, consultez Affichage des données dans le contrôle DataGridView Windows Forms. |
||
AfterUpdate |
|||
BeforeColEdit |
|||
BeforeColUpdate BeforeDelete BeforeInsert BeforeUpdate |
Nouvelle implémentation. Les opérations sur les données sont gérées dans la source de données. Pour plus d'informations, consultez Affichage des données dans le contrôle DataGridView Windows Forms. |
||
ButtonClick |
Click (contrôle Button) |
||
Change |
|
||
Click |
|||
ColEdit |
|||
ColResize |
|||
DblClick |
|||
DragDrop DragOver |
Nouvelle implémentation. Pour plus d'informations, consultez Fonction de glisser-déplacer pour les utilisateurs de Visual Basic 6.0. |
||
Error |
|||
HeadClick |
|||
MouseDown |
|||
MouseMove |
|||
MouseUp |
|||
OLECompleteDrag OLEDragDrop OLEDragOver OLEGiveFeedback OLESetData OLEStartDrag |
Nouvelle implémentation. Pour plus d'informations, consultez Fonction de glisser-déplacer pour les utilisateurs de Visual Basic 6.0. |
||
OnAddNew |
|||
RowColChange |
|||
RowResize |
|||
SelChange |
|||
SplitChange |
Nouvelle implémentation. Les affichages fractionnés ne sont pas directement pris en charge ; utilisez un contrôle SplitContainer. |
||
Validate |
Mettre à niveau des remarques
Lorsqu'un projet Visual Basic 6.0 est mis à niveau vers Visual Basic 2008, l'événement Change du contrôle DataGrid est mappé à l'événement TextChanged du contrôle Visual Basic 2008DataGridView. Le comportement de l'événement TextChanged diffère de celui de l'événement Change ; cette différence peut produire des résultats imprévus dans votre code.
Tout code relatif à des méthodes ou des événements spécifiques à des données n'est pas mis à niveau. Des commentaires d'avertissement sont ajoutés au code et le code doit être supprimé ou modifié avant la compilation de l'application.
Voir aussi
Concepts
Résumé de la technologie du contrôle DataGridView (Windows Forms)
Ajouts dans les Windows Forms pour .NET Framework 2.0
Référence
Vue d'ensemble du contrôle DataGridView (Windows Forms)
Autres ressources
DataGridView, contrôle (Windows Forms)
Contrôles Windows Forms pour les utilisateurs de Visual Basic 6.0