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

C# Discussion :

[WPF][C#] combobox dans listview


Sujet :

C#

  1. #1
    Nouveau membre du Club
    Profil pro
    Inscrit en
    Février 2006
    Messages
    53
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2006
    Messages : 53
    Points : 36
    Points
    36
    Par défaut [WPF][C#] combobox dans listview
    Bonjour,

    J'ai actuellement un soucis pour charger un combo dans mon listview. En fait j'ai un listView qui contient les données d'une table. J'ai un second listview qui doit faire du filtrage sur le premier listview un peu a la maniere d'access.

    Dans mon second listview, j'ai placé un comboBox qui doit recuperer les colonnes du premier listView mais je ne sais pas comment récuperer les noms des colonnes de mon premier listview

    Sachant que le colonnage de mon premier listview est définie dynamiquement. en fonction de la table que l'on souhaite afficher.

    Voici le code que j'ai.

    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
     
    <ListView x:Name="_listViewFiltrageListes" Grid.Row="1" IsSynchronizedWithCurrentItem="True" ScrollViewer.HorizontalScrollBarVisibility="Auto" ScrollViewer.VerticalScrollBarVisibility="Auto">
     
                        <!-- Ressources du listView -->
                        <ListView.Resources>
                            <DataTemplate x:Key="comboboxChamp">
                                <ComboBox ItemSource=??? />
                            </DataTemplate>
                        </ListView.Resources>
     
                        <ListView.View>
                            <GridView AllowsColumnReorder="False">
                                <GridViewColumn Header="Champ" CellTemplate="{StaticResource comboboxChamp}" Width="100"/>
                                <GridViewColumn Header="Tri" Width="100"/>
                                <GridViewColumn Header="Critère"  Width="200"/>
                                <GridViewColumn Header=" "  Width="100"/>
                                <GridViewColumn Header="Ou"  Width="100"/>
                            </GridView>
                        </ListView.View>
                    </ListView>

    Si vous avez des pistes à me proposer pour binder mon comboBox. merci d'avance

  2. #2
    Nouveau membre du Club
    Profil pro
    Inscrit en
    Février 2006
    Messages
    53
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2006
    Messages : 53
    Points : 36
    Points
    36
    Par défaut
    J'ai donc défini ceci.

    [CODE<ComboBox ItemsSource="{Binding Column, ElementName=_listViewAffichageListe}" />CODE]

    mais je ne vois pas comment dire de lier avec le colonnage.

  3. #3
    Rédacteur
    Avatar de Thomas Lebrun
    Profil pro
    Inscrit en
    Octobre 2002
    Messages
    9 161
    Détails du profil
    Informations personnelles :
    Âge : 42
    Localisation : France

    Informations forums :
    Inscription : Octobre 2002
    Messages : 9 161
    Points : 19 434
    Points
    19 434
    Par défaut
    Par code, tu peux pas y arriver ? Récupérer la liste des colonnes et la spécifier comme ItemsSource ?

  4. #4
    Nouveau membre du Club
    Profil pro
    Inscrit en
    Février 2006
    Messages
    53
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2006
    Messages : 53
    Points : 36
    Points
    36
    Par défaut
    Bonjour Thomas, en fait par code je n'ai pas reussi a retrouver mon comboBox dans ma resource pour lui attribuer les items.

    quand je fais

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    ((ComboBox)this._listViewFiltrageListes.Resources["comboboxChamp"]).Items.Add(myGridViewColumn.Header);
    il me sort une exception comme quoi je ne peux pas faire un cast.

  5. #5
    Nouveau membre du Club
    Profil pro
    Inscrit en
    Février 2006
    Messages
    53
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2006
    Messages : 53
    Points : 36
    Points
    36
    Par défaut
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
     
    ComboBoxItem monComboBoxItem = new ComboBoxItem();
     
                    monComboBoxItem.Content=myPropertyInfo.Name;
                    ((ComboBox)this._listViewFiltrageListes.Resources.FindName("comboboxChamp")).Items.Add(monComboBoxItem);
    Voici ce que j'ai codé, mais quand je rentre dans ma procedure, il me met une NullReferenceException.

    Voyez vous de quoi celapourrait venir ?



    Merci

  6. #6
    Rédacteur
    Avatar de Thomas Lebrun
    Profil pro
    Inscrit en
    Octobre 2002
    Messages
    9 161
    Détails du profil
    Informations personnelles :
    Âge : 42
    Localisation : France

    Informations forums :
    Inscription : Octobre 2002
    Messages : 9 161
    Points : 19 434
    Points
    19 434
    Par défaut
    Dans les resources de listViewFiltrageListes, tu n'accèdes pas à une ComboBox mais à un DataTemplate....

  7. #7
    Nouveau membre du Club
    Profil pro
    Inscrit en
    Février 2006
    Messages
    53
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2006
    Messages : 53
    Points : 36
    Points
    36
    Par défaut
    D'accord donc je me retrouve avec un DataTemplate. Mais c'est bizard qu'ils n'aient pas prevu qu'on puisse travailler avec un objet que l'on place dans les resources.

    Il y a surement une méthode qui permet de recuperer cet objet et de le manipuler Non??.

  8. #8
    Rédacteur
    Avatar de Thomas Lebrun
    Profil pro
    Inscrit en
    Octobre 2002
    Messages
    9 161
    Détails du profil
    Informations personnelles :
    Âge : 42
    Localisation : France

    Informations forums :
    Inscription : Octobre 2002
    Messages : 9 161
    Points : 19 434
    Points
    19 434
    Par défaut
    Je n'ai rien sous la main pour tester mais tu peux p-e essayer en parcourant les éléments de ton DataTemplate

Discussions similaires

  1. [WPF C#] Checkbox dans listview
    Par miky77 dans le forum Windows Presentation Foundation
    Réponses: 7
    Dernier message: 02/09/2011, 08h21
  2. Binding objet et combobox dans listview
    Par warmy dans le forum Windows Presentation Foundation
    Réponses: 12
    Dernier message: 11/03/2009, 00h29
  3. [WPF] textbox ou combobox dans un listview
    Par modafine dans le forum Windows Presentation Foundation
    Réponses: 5
    Dernier message: 14/08/2008, 10h37
  4. Probleme affichage comboBox dans un listView
    Par fordofin dans le forum Windows Presentation Foundation
    Réponses: 9
    Dernier message: 06/05/2008, 13h18

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