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

Windows Presentation Foundation Discussion :

WPF Binder textbox avec ma listview


Sujet :

Windows Presentation Foundation

  1. #1
    Futur Membre du Club
    Profil pro
    Inscrit en
    Avril 2003
    Messages
    5
    Détails du profil
    Informations personnelles :
    Localisation : Canada

    Informations forums :
    Inscription : Avril 2003
    Messages : 5
    Points : 8
    Points
    8
    Par défaut WPF Binder textbox avec ma listview
    Bonjour

    J'ai reussi a binder mon dataset sur mon listview, mais j'aimerais binder un textbox sur la listview lors du changement de selection dans la liste.
    Dans le but de pouvoir visualiser les champs de l'element selectionné afin de pouvoir (grace a des boutons) ajouter/modifier/supprimer/ l'element selectionné de la listview

    Code du listview qui fonctionne tres bien
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    <ListView  ItemsSource="{Binding}"  Margin="22,12,309,0" x:Name="LstViewCie" Height="178" VerticalAlignment="Top">
                   <ListView.View >
                    <GridView >
                        <GridViewColumn Header="Nom compagnie " DisplayMemberBinding="{Binding Path=NomCie}" Width="200 "></GridViewColumn>
                        <GridViewColumn Header="Numéro" DisplayMemberBinding="{Binding Path=NoCie}"></GridViewColumn>
                        <GridViewColumn Header="Module" DisplayMemberBinding="{Binding Path=NoModule}"></GridViewColumn>
                    </GridView> 
                </ListView.View> 
            </ListView>
    Voici mon XAML DU TEXTBOX DESIRE:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    <Border HorizontalAlignment="Right" Margin="0,64,12,0" Name="Border1" Width="282" Height="203" VerticalAlignment="Top">
                <StackPanel Margin="10" Height="185" Name="StackPanel1" Width="268" >
                    <StackPanel x:Name="Stp1" Orientation="Horizontal" >
                        <Label Width="75">Compagnie:</Label>
                        <TextBox x:Name="tbCompagnie" Text="{Binding Path=NomCie}"  Height="26" Width="188"></TextBox>
                    </StackPanel>       
            </Border>
    Code behind

    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
    Inherits System.Windows.Window
     
        Private _clClassDb As New ClasseDB
        Private objDataSet As New DataSet
        Private LaTable As String = "Compagnie"
        Dim AdVol As New OleDb.OleDbDataAdapter
        Private nwBindingSource As System.Windows.Forms.BindingSource
     
        Private Sub Window1_Loaded(ByVal sender As System.Object, ByVal e As System.Windows.RoutedEventArgs) Handles MyBase.Loaded
            Dim objConnection As DbConnection = Nothing
     
            Try
                ' Création de l'objet connexion
                objConnection = _clClassDb.GetConnection()
                ' Ouverture de la connexion
                objConnection.Open()
     
                objDataSet.Reset()
                _clClassDb.ChargerDataset(objDataSet, LaTable, AdVol, "SELECT " & LaTable & ".* FROM " & LaTable, " WHERE 1=1 ORDER BY NoCie ")
     
                LstViewCie.DataContext = objDataSet.Tables(0)
     
     
                 ListBox1.DataContext = objDataSet.Tables(0)
                tbCompagnie.DataContext = objDataSet.Tables(0)
                Stp1.DataContext = objDataSet.Tables(0)
     
     
     
                'StackPanel1.DataContext = objDataSet.Tables(0) 'objdataset.tables("compagnie")
     
     
             Finally
                If objConnection.State <> System.Data.ConnectionState.Closed Then
                    objConnection.Close()
                End If
     
            End Try
        End Sub

    MERCI A L'AVANCE

  2. #2
    Membre expert
    Profil pro
    Inscrit en
    Décembre 2004
    Messages
    2 210
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Décembre 2004
    Messages : 2 210
    Points : 3 015
    Points
    3 015
    Par défaut
    Salut,

    Tu peux essayer ça :

    Code xml : Sélectionner tout - Visualiser dans une fenêtre à part
    <TextBox x:Name="tbCompagnie" Text="{Binding ElementName=LstViewCie, Path=SelectedItem.NomCie}"  Height="26" Width="188"></TextBox>

  3. #3
    Futur Membre du Club
    Profil pro
    Inscrit en
    Avril 2003
    Messages
    5
    Détails du profil
    Informations personnelles :
    Localisation : Canada

    Informations forums :
    Inscription : Avril 2003
    Messages : 5
    Points : 8
    Points
    8
    Par défaut Merci Binoo
    Ca fonctionne tres bien. Il ya beaucoup d'option différentes de Binding dépendant de ce que l'on veut vraiment

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Réponses: 0
    Dernier message: 24/06/2015, 17h51
  2. [C#]Lier automatiquement un Textbox avec une variable
    Par apoingsfermes dans le forum Windows Forms
    Réponses: 4
    Dernier message: 19/07/2006, 11h21
  3. [VBA-A]Remplir une textbox avec des données de tables.
    Par cuicui08 dans le forum VBA Access
    Réponses: 1
    Dernier message: 24/03/2006, 10h28
  4. Incrémentation dynamique d'un textbox avec une boucle for
    Par Etanne dans le forum Général JavaScript
    Réponses: 1
    Dernier message: 06/03/2006, 15h17
  5. Alimenter la valeur d'un textbox avec une requete
    Par planetevoyage dans le forum Access
    Réponses: 2
    Dernier message: 12/09/2005, 08h26

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