IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

VB.NET Discussion :

databindings : textbox et propriété de classe.


Sujet :

VB.NET

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre expérimenté
    Avatar de Kropernic
    Homme Profil pro
    Analyste / Programmeur / DBA
    Inscrit en
    Juillet 2006
    Messages
    3 932
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 42
    Localisation : Belgique

    Informations professionnelles :
    Activité : Analyste / Programmeur / DBA
    Secteur : Distribution

    Informations forums :
    Inscription : Juillet 2006
    Messages : 3 932
    Par défaut databindings : textbox et propriété de classe.
    Bonjour,

    J'écris ce message car je n'arrive pas à binder une proriété d'une classe à un contrôle de type Textbox.

    J'ai suivi plusieurs tutoriels et je dois forcément être passé à côté de quelque chose car rien n'y fait...

    Voici les classes impliquées :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
    47
    48
    49
    50
    51
    52
    53
    54
    55
    56
    57
    58
    59
    60
    61
    62
    63
    64
    65
    66
    67
    68
    69
    70
    Public Class Parties
        Inherits List(Of Partie)
     
        Public Overloads Function Find(ByVal id As Integer) As Partie
            For Each elem As Partie In Me
                If elem.Id = id Then
                    Return elem
                End If
            Next
            Return Nothing
        End Function
    End Class
     
    Public Class Partie
     
        Private _id As Integer
        Public Property Id As Integer
            Set(value As Integer)
                _id = value
                Me.Status = e_status.Updated
            End Set
            Get
                Return _id
            End Get
        End Property
     
        Private _ordre As Integer
        Public Property Ordre As Integer
            Set(value As Integer)
                _ordre = value
                Me.Status = e_status.Updated
            End Set
            Get
                Return _ordre
            End Get
        End Property
     
        Private _textes As Textes
        Public Property Textes As Textes
            Set(value As Textes)
                _textes = value
                Me.Status = e_status.Updated
            End Set
            Get
                Return _textes
            End Get
        End Property
     
        Public Property Status As e_status
        Public Enum e_status As Integer
            UpToDate = 1
            Created = 2
            Updated = 3
        End Enum
     
     
        Public Sub New(ByVal id As Integer, ByVal ordre As Integer, ByVal textes As Textes) 'ByVal nom As String
            Me.Id = id
            Me.Ordre = ordre
            Me.Textes = textes
            Me.Status = e_status.UpToDate
        End Sub
     
        Public Sub New(ByVal ordre As Integer, ByVal textes As Textes) 'ByVal nom As String
            Me.Ordre = ordre
            Me.Textes = textes
            Me.Status = e_status.Created
        End Sub
     
    End Class
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    Public Class Textes
        Inherits List(Of Texte)
     
        Public Overloads Function Find(ByVal language As Integer) As Texte
            For Each elem As Texte In Me
                If elem.Language = language Then
                    Return elem
                End If
            Next
            Return Nothing
        End Function
    End Class
     
    Public Class Texte
     
        Public Property Texte As String
        Public Property Language As Integer
        Public Property Version As Integer
     
        Public Sub New(ByVal texte As String, ByVal language As Integer, ByVal version As Integer)
            Me.Texte = texte
            Me.Language = language
            Me.Version = version
        End Sub
     
    End Class
    Dans l'application, j'instancie donc un objet de type Parties dans lequel je place des objets de type Partie lesquels contiennent un objet de type Textes qui lui-même est contient 2 objets de type Texte.

    Sur mon formulaire, j'ai un datagridview qui a pour source de données l'objet de type Parties. Ca, ça marche ^^.
    A côté de ce controle, il y a 2 textbox. Une pour le texte en français et une pour le texte en néerlandais. C'est la donnée qui est contenu dans chacun des objets Texte.

    Ce que je voudrais, c'est que lorsque l'on choisit une ligne dans le datagridview, le texte associé s'affiche dans la TextBox appropriée.

    Vous trouverez un screenshot en pièce jointe. Il sera p-e plus explicite.
    L'écran se divise donc en 3 (liste, détail et création). Quand je choisis un item dans liste, je veux afficher le détail.

    J'y arrive "manuellement" mais je dois alors forcer l'utilisateur à cliquer sur un bouton pour que les modifications apportées soient reportées dans l'objet en mémoire. Si j'ai bien compris, avec le databinding, cela se fait automatiquement.
    C'est ce à quoi je voudrais arriver pour pouvoir retirer les boutons "Annuler les modifications" et "Valider les modifications".

    Merci d'avance.

    Griftou.
    Images attachées Images attachées  

Discussions similaires

  1. DataBinding : depuis la propriété, retrouver le control.
    Par Totanne dans le forum Windows Forms
    Réponses: 3
    Dernier message: 24/03/2008, 21h17
  2. les propriétés des classes externes
    Par zooffy dans le forum ASP.NET
    Réponses: 12
    Dernier message: 28/01/2008, 15h10
  3. passer une fonction dans un parametre d'une propriété de classe
    Par CAML dans le forum Général JavaScript
    Réponses: 22
    Dernier message: 06/08/2006, 19h52
  4. Indexation d'une propriété de classe
    Par Phifi dans le forum VB 6 et antérieur
    Réponses: 7
    Dernier message: 18/07/2006, 08h31
  5. [C#]DataBinding textbox problème
    Par philou80 dans le forum Windows Forms
    Réponses: 3
    Dernier message: 05/07/2006, 11h46

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo