J'ai une base de données SQLite simple que j'utilise pour suivre les factures. J'ai récemment décidé d'écrire une demande pour cela comme une excuse pour apprendre LINQ. J'ai trouvé other questions qui résolvent ce problème, mais aucune des solutions n'a fonctionné pour moi.Liaison d'une zone de liste déroulante à l'aide d'un DataContext et de LINQ to SQL
Utilisation du concepteur O/RM, je modélise ma base de données similaire à ce qui suit (simplifié):
+------------+ +----------+
| Invoice | | Customer |
+------------+ +----------+
| ID | +----| ID |
| CustomerID |<-----+ | Name |
+------------+ +----------+
Cela fonctionne très bien pour lier la table factures à une liste et de voir une liste de clients, mais je ne suis pas tout à fait comment lier la table des clients à un ComboBox
tout en montrant le Customer
pour la facture.
Voici le code qui établit la liaison:
InvoiceList.DataSource = _db.Invoices; // InvoiceList is ListBox
CustomerBox.DataSource = _db.Customers; // CustomerBox is ComboBox
CustomerBox.DataBindings.Add("SelectedItem", InvoiceList.DataSource, "Customer");
Dans ce cas, _db
est le DataContext
généré par le O/RM.
Lorsque je sélectionne différents articles dans la liste des factures, la boîte du client ne semble pas afficher les modifications que j'ai apportées. Des pointeurs comment corriger cela? Y a-t-il une meilleure façon de configurer cette liaison?
J'ai joué avec elle et qui semblait aider. D'une certaine façon, je suis retourné à mon code original et ça fonctionne maintenant. Ça me dérange ... Merci pour l'aide. – jheddings