Procédure pas à pas : création d'un contrôle utilisateur Windows Forms prenant en charge la liaison de données complexe
Lorsque vous affichez des données sur des formulaires dans les applications Windows, vous pouvez soit choisir des contrôles existants de la Boîte à outils, soit créer des contrôles personnalisés si votre application nécessite des fonctionnalités qui ne sont pas disponibles dans les contrôles standard. Cette procédure pas à pas indique comment créer un contrôle qui implémente ComplexBindingPropertiesAttribute. Les contrôles qui implémentent ComplexBindingPropertiesAttribute contiennent des propriétés DataSource et DataMember qui peuvent être liées aux données. Ces contrôles sont semblables à DataGridView ou ListBox.
Pour plus d'informations sur la création de contrôles personnalisés, consultez Développement de contrôles Windows Forms au moment du design.
Lors de la création de contrôles à utiliser dans les scénarios de liaison de données, vous devez implémenter l'un des attributs de liaison de données suivants :
Utilisation des attributs de liaison de données |
---|
Implémentez DefaultBindingPropertyAttribute sur les contrôles simples, comme un TextBox qui affiche une seule colonne (ou propriété) de données. Pour plus d'informations, consultez Procédure pas à pas : création d'un contrôle utilisateur Windows Forms prenant en charge la liaison de données simple. |
Implémentez ComplexBindingPropertiesAttribute sur les contrôles, comme un DataGridView, qui affichent des listes (ou tables) de données. (Ce processus est décrit dans cette page de procédure pas à pas.) |
Implémentez LookupBindingPropertiesAttribute sur les contrôles, comme un ComboBox, qui affichent des listes (ou tables) de données mais qui ont également besoin de présenter une seule colonne ou propriété. Pour plus d'informations, consultez Procédure pas à pas : création d'un contrôle utilisateur Windows Forms prenant en charge la liaison de données de recherche. |
Cette procédure pas à pas crée un contrôle complexe qui affiche des lignes de données d'une table. Cet exemple utilise la table Customers de l'exemple de base de données Northwind. Le contrôle utilisateur complexe affiche la table Customers dans une DataGridView dans le contrôle personnalisé.
Au cours de cette procédure pas à pas, vous apprendrez à :
Créez une nouvelle Application Windows.
Ajouter un nouveau Contrôle utilisateur à votre projet.
Concevoir visuellement le contrôle utilisateur.
Implémenter l'attribut ComplexBindingProperty.
Créer un groupe de données avec l'Configuration de source de données (Assistant).
Définir la table Customers dans la Sources de données (fenêtre) pour qu'elle utilise le nouveau contrôle complexe.
Ajoutez le nouveau contrôle en le faisant glisser de la fenêtre Sources de données vers Form1.
Composants requis
Pour exécuter cette procédure pas à pas, vous devrez :
- avoir accès à l'exemple de base de données Northwind. Pour plus d'informations, consultez Comment : installer des exemples de bases de données.
Création d'une application Windows
La première étape consiste à créer une Application Windows.
Pour créer le nouveau projet Windows
Dans le menu Fichier de Visual Studio, créez un nouveau Projet.
Nommez le projet ProcédureContrôleComplexe.
Sélectionnez Application Windows, puis cliquez sur OK. Pour plus d'informations, consultez Création d'applications Windows.
Le projet ProcédureContrôleComplexe est créé et ajouté à l'Explorateur de solutions.
Ajout d'un contrôle utilisateur au projet
Cette procédure pas à pas créant un contrôle complexe pouvant être lié à des données à partir d'un Contrôle utilisateur, vous devez ajouter un élément Contrôle utilisateur au projet.
Pour ajouter un contrôle utilisateur au projet
Dans le menu Projet, choisissez Ajouter un contrôle utilisateur.
Tapez ComplexDataGridView dans la zone Nom, puis cliquez sur Ajouter.
Le contrôle ComplexDataGridView est ajouté à l'Explorateur de solutions et s'ouvre dans le concepteur.
Conception du contrôle ComplexDataGridView
Cette étape ajoute un contrôle DataGridView au contrôle utilisateur.
Pour concevoir le contrôle ComplexDataGridView
- Faites glisser un contrôle DataGridView de la Boîte à outils vers l'aire de conception du contrôle utilisateur.
Ajout de l'attribut de liaison de données requis
Dans le cas de contrôles complexes qui prennent en charge la liaison de données, vous pouvez implémenter ComplexBindingPropertiesAttribute.
Pour implémenter l'attribut ComplexBindingProperties
Basculez le contrôle ComplexDataGridView en mode Code. (Dans le menu Affichage, sélectionnez Code.)
Remplacez le code dans ComplexDataGridView par les éléments suivants :
<System.ComponentModel.ComplexBindingProperties("DataSource", "DataMember")> Public Class ComplexDataGridView Public Property DataSource() As Object Get Return DataGridView1.DataSource End Get Set(ByVal value As Object) DataGridView1.DataSource = value End Set End Property Public Property DataMember() As String Get Return DataGridView1.DataMember End Get Set(ByVal value As String) DataGridView1.DataMember = value End Set End Property End Class
using System.Windows.Forms; namespace CS { [System.ComponentModel.ComplexBindingProperties("DataSource", "DataMember")] public partial class ComplexDataGridView : UserControl { public object DataSource { get{ return dataGridView1.DataSource; } set{ dataGridView1.DataSource = value; } } public string DataMember { get{ return dataGridView1.DataMember; } set{ dataGridView1.DataMember = value; } } public ComplexDataGridView() { InitializeComponent(); } } }
Dans le menu Générer, cliquez sur Générer la solution.
Création d'une source de données à partir de votre base de données
Cette étape utilise l'Assistant Configuration de source de données pour créer une source de données basée sur la table Customers fournie dans l'exemple de base de données Northwind. Vous devez avoir accès à l'exemple de base de données Northwind pour créer la connexion. Pour plus d'informations sur l'installation de l'exemple de base de données Northwind, consultez Comment : installer des exemples de bases de données.
Pour créer la source de données
Dans le menu Données, cliquez sur Afficher les sources de données.
Dans la fenêtre Sources de données, sélectionnez Ajouter une nouvelle source de données pour démarrer l'Assistant Configuration de source de données.
Sélectionnez Base de données dans la page Choisir un type de source de données, puis cliquez sur Suivant.
Dans la page Choisir votre connexion de données, effectuez l'une des opérations suivantes :
Si une connexion de données à l'exemple de base de données Northwind est disponible dans la liste déroulante, sélectionnez-la.
ou
Sélectionnez Nouvelle connexion pour afficher la boîte de dialogue Ajouter/Modifier la connexion. Pour plus d'informations, consultez Ajouter/Modifier une connexion, boîte de dialogue (Général).
Si votre base de données requiert un mot de passe, sélectionnez l'option pour inclure les données sensibles, puis cliquez sur Suivant.
Cliquez sur Suivant dans la page Enregistrer la chaîne de connexion dans le fichier de configuration de l'application.
Développez le nœud Tables dans la page Choisir vos objets de base de données.
Sélectionnez la table Customers, puis cliquez sur Terminer.
NorthwindDataSet est ajouté à votre projet et la table Customers apparaît dans la fenêtre Sources de données.
Définition de la table Customers pour qu'elle utilise le contrôle ComplexDataGridView
La fenêtre Sources de données vous permet de définir le contrôle à créer avant de faire glisser des éléments vers un formulaire.
Pour définir la table Customers pour qu'elle crée une liaison avec le contrôle ComplexDataGridView
Ouvrez Form1 dans le concepteur.
Développez le nœud Customers dans la fenêtre Sources de données.
Cliquez sur la flèche de déroulement du nœud Customers et sélectionnez Personnaliser.
Sélectionnez ComplexDataGridView dans la liste de Contrôles associés dans la boîte de dialogue Options de personnalisation de l'interface utilisateur du formulaire de données.
Cliquez sur la flèche de déroulement dans la table Customers et sélectionnez ComplexDataGridView dans la liste de contrôles.
Ajout de contrôles au formulaire
Vous pouvez créer les contrôles liés aux données en faisant glisser des éléments depuis la fenêtre Sources de données vers votre formulaire.
Pour créer des contrôles liés aux données sur le formulaire
- Faites glisser le nœud Customers principal de la fenêtre Sources de données sur le formulaire et vérifiez que le contrôle ComplexDataGridView est utilisé pour afficher les données de la table.
Exécution de l'application
Pour exécuter l'application
- Appuyez sur F5 pour exécuter l'application.
Étapes suivantes
Selon les spécifications de votre application, vous pouvez exécuter différentes étapes après la création d'un contrôle qui prend en charge la liaison de données. Les étapes suivantes les plus courantes sont :
Placer vos contrôles personnalisés dans une bibliothèque de contrôles pour pouvoir les réutiliser dans d'autres applications. Pour plus d'informations, consultez Windows Control Library Template.
Créer des contrôles qui prennent en charge des scénarios de recherche. Pour plus d'informations, consultez Procédure pas à pas : création d'un contrôle utilisateur Windows Forms prenant en charge la liaison de données de recherche.
Voir aussi
Tâches
Concepts
Liaison de contrôles Windows Forms à des données dans Visual Studio
Liaison de contrôles à des données dans Visual Studio
Autres ressources
Connexion aux données dans Visual Studio
Préparation de votre application pour recevoir des données
Extraction de données dans votre application