none
Picture ComboBox RRS feed

  • Question

  • Bonjour je souhaire faire une combobox qui m'affiche des images.
    J'ai trouvé plusieurs blogs m'indiquant comment modifier mes items afin d'afficher les images. Par contre je n'arrive pas à afficher l'image correspondant à l'item selectionné.

    En regardant le détail d'une combo, j'ai vu que c'est un ContentPresenter qui est utilisé. J'ai décidé de mettre en place une DataTemplate voir le code suivant sur la propriété
    ContentTemplate . Mais le binding ne fonctionne pas. Pouvez vous me dire où est mon erreur.

    Pour le DataTemplate

    Code Snippet

    <DataTemplate x:Key="SelectionBoxItemNIH">

    <Image Width="81" Height="61" Source="{Binding}"/>

    </DataTemplate>


    Pour le
    ContentPresenter
    Code Snippet

    <ContentPresenter
    Name="ContentSite"
    IsHitTestVisible="False"
    Content="{TemplateBinding SelectionBoxItem}"
    ContentTemplate="{StaticResource SelectionBoxItemNIH}"
    ContentTemplateSelector="{TemplateBinding ItemTemplateSelector}"
    Margin="3,3,23,3"
    VerticalAlignment="Center"
    HorizontalAlignment="Left" />



               

    Merci,

    Nicolas
    samedi 23 août 2008 14:33

Toutes les réponses

  • Nop, il y a plus simple. C'est la prop ItemTemplate du combobox qu'il faut modifier (http://www.c2i.fr/code.aspx?IDCode=698 par exemple)

     

    lundi 8 septembre 2008 13:54
  • Bonjour,

    je ne suis pas sûre d'avoir compris le contexte, vous souhaitez afficher des images dans votre ComboBox et lorsqu'une image est sélectionnée, elle doit apparaitre dans un controle Image par exemple ? c'est bien cela ?
    Audrey - http://blogs.developpeur.org/audrey/
    mardi 31 mars 2009 08:37
  • Bonjour,

     Je te conseille de customize ton combox d'avantage et aussi c'est le data source qui doit avoir ce binding et la property source de l'imave doit etre binder par une url qui est une proprité de la classe du datacontext de ton combo.

    Cordialement

    samedi 18 décembre 2010 00:13
  • En partant du principe que vous donnez une liste d'image en ItemsSource de la comboBox, il me semble qu'un simple DataTemplate suffit amplement:

    <DataTemplate x:Key="DataTemplateCB">
        <Image Source="{Binding}"/>
    </DataTemplate>

    [...]

    <ComboBox ItemTemplate="{StaticResource DataTemplateCB}"/>

    • Proposé comme réponse Niels Freier mardi 15 mars 2011 16:52
    • Non proposé comme réponse Niels Freier mardi 15 mars 2011 16:52
    mardi 15 mars 2011 16:51