Question : VB.NET - Databinding et UserControl combiné

Salut tous, le

I veulent savoir que le meilleur veulent concevoir la fonctionnalité databinding dans mon usercontrol d'usercontrol.

The elle-même est fait à partir d'une boîte à textes et d'une grille. La grille sera montrée à l'utilisateur et leur montrer une liste de champs appropriés de la base de données (dans ce cas-ci noms d'artiste comme le madonna). L'utilisateur choisit fondamentalement quelque chose hors de la grille des usercontrol, ceci changera alors la « identification » et « montrer » les propriétés de l'usercontrol. La propriété de l'identification des usercontrol est ci-dessous :

, identification de propriété du
() pendant que le m_iID du
de Get
de fin du m_iID
d'Integer
Get
(valeur de ByVal comme nombre entier) = le value
« régénèrent le binding
RaiseEvent PropertyChanged (je, nouveau System.ComponentModel.PropertyChangedEventArgs (« identification » de données))Le

On de Property

de fin de Set
de fin du
(la propriété d'affichage est exactement identique à moins qu'elle change la propriété du .text de la boîte à textes au lieu d'une variable privée) la forme, j'ai un usercontrol, un Forms.Bindingsource et une classe peuplée de « produit » (le champ valide d'artiste et d'ArtistID étant peuplé c.-à-d. 123, Madonna). La commande d'utilisateur a son « identification » et le « affichage » met en place le databound au point d'émission par l'intermédiaire de l'ArtistID et la classe de produit des champs respectivly.

The d'artiste est alors placée comme point d'émission du BindingSource. En ce moment les propriétés d'identification et d'affichage de l'usercontrol sont mises à jour pour assortir la classe de produit qui binded au

All de point d'émission (identification = 123 et affichage = Madonna) de ceci est très bien, cependant quand je choisis un nouvel artiste à partir de l'UserControl (c.-à-d. 456, Michael Jackson), le code suivant est couru dans l'usercontrol : le

Me.ID = d'oSelectedItem.ID » (456) le

du
de/>Me.Display = d'oSelectedItem.Description '(Michael Jackson) (est simplement l'oSelectedItem ce que l'utilisateur a choisi parmi une liste d'autres artistes) en ce moment, « l'ArtistID » champ changera dans la classe de produit (tracée au champ d'identification dans l'usercontrol et égalera 456), toutefois « l'artiste » propriété restera inchangé (tracé au champ d'affichage dans l'usercontrol, ceci restera comme « Madonna » et PAS « Michael Jackson ").

en ce moment, l'usercontrol montreront maintenant le nouveau nom d'artiste (« Michael Jackson "), si nous laissons l'usercontrol que le vieux nom d'artiste est reconstitué de l'objet de produit et est-ce que placé en arrière dans

What d'usercontrol (le « Madonna » est-il reconstitué) je faire ai tort ? Son presque goût seulement le premier changement de propriété entre en vigueur et la deuxième ligne qui met à jour l'affichage est ignored.

I AM using VB.NET 2005.

class= de

Réponse : VB.NET - Databinding et UserControl combiné

Il y a 2 choses que vous pourriez faire alors.  On est à au lieu d'éditer directement les champs que vous changez à la place le point d'émission du bindingsource en objet choisi.  Si l'objet choisi est indisponible vous devez utiliser control.focus après chaque changement de champ quand vous éditez des zones de comptage en code de fond.

Faites-le moi savoir si ce n'est pas clair.
Autres solutions  
  •  MS Excel 2007 et pdf - l'exportation vers le pdf prend de longues heures !
  •  Dans le Perl, comment j'ajoute une valeur à la liste, puis le contrôle pour voir si la valeur existent avant d'ajouter une nouvelle valeur
  •  Comment fais j'initialiser de la HP BL460c G6 de san et de la HP XP 240000
  •  Comment fais j'employer une clef de permis de volume sur un ordinateur de HP avec du CD de restauration
  •  Emplacement primaire de deux SCCM dans l'annuaire actif
  •  L'initiateur et la HP D2D de l'iSCSI R2 du serveur 2008 de Windows GERCENT l'issue
  •  Stocker le dossier dans le mysql using connector.net et le champ de goutte
  •  Carte vidéo d'USB - bit 32 sur le matériel travaillant au niveau du bit 64 ?
  •  asp.net que j'essaye de convertir une forme de HTML en forme d'aspx ou ? ce qui jamais. Aide du besoin sur la façon dont à à elle.
  •  Winzip 12 issues de secours du travail ?
  •  
    programming4us programming4us