Ajouter une image dans une Grid - XAML / C#

jim462 Messages postés 23 Date d'inscription samedi 22 septembre 2001 Statut Membre Dernière intervention 22 novembre 2008 - 9 mars 2008 à 02:37
ShareVB Messages postés 2676 Date d'inscription vendredi 28 juin 2002 Statut Membre Dernière intervention 13 janvier 2016 - 15 mars 2008 à 11:33
Bonjour,

Je cherche comment ajouter une image dans une Grid.
Par contre, je ne la veux pas dans le code XAML, mais dans le code C#
(la raison, l'image sera dynamique).

Donc le rendu que je veux avoir, le voici (en XAML) :

<Grid Margin="100,0,100,0" x:Name="myBar">
            <Grid.ColumnDefinitions>
                <ColumnDefinition Width="*"/>
            </Grid.ColumnDefinitions>

           

</Grid>

Donc en code C#  j'ai mon objet Grid plus :

            ColumnDefinition myColDef1 = new ColumnDefinition();
            myBar.ColumnDefinitions.Add(myColDef1);

Avez vous une proposition pour y ajouter les images ??
D'avance merci.

1 réponse

ShareVB Messages postés 2676 Date d'inscription vendredi 28 juin 2002 Statut Membre Dernière intervention 13 janvier 2016 25
15 mars 2008 à 11:33
salut,

en fait, il faut utiliser les DependencyProperty afin de définir le Grid.Column et Grid.Row et puis pour charger une image dans un Image (http://msdn2.microsoft.com/fr-fr/library/system.windows.controls.image.source.aspx)..ensuite, il faut aussi ajouter une définition de ligne pour chaque ligne...

            myBar.ColumnDefinitions.Add(new ColumnDefinition());
            for (int i = 0; i < 10; i++)
            {
                myBar.RowDefinitions.Add(new RowDefinition());
                Image im = new Image();

                BitmapImage bi3 = new BitmapImage();
                bi3.BeginInit();
                bi3.UriSource = new Uri("test.bmp", UriKind.Relative);
                bi3.EndInit();
                im.Source = bi3;

                im.SetValue(Grid.ColumnProperty, 0);
                im.SetValue(Grid.RowProperty, i);
                im.SetValue(Panel.ZIndexProperty, 1);
                myBar.Children.Add(im);
            }

ShareVB
0