2009-11-16 3 views
0

Il est assez simple de définir une image dans xaml et de la déplacer, mais comment est-ce que je ferais cela par programmation? Je définis mon image comme ceci:Créer et placer une image dans WPF

System.Windows.Controls.Image imgpanel = new System.Windows.Controls.Image(); 
imgpanel.Source = loadBitmap(capwin); 

Et je voudrais être en mesure de le mettre sur ma fenêtre. Comment aurais-je eu à ce sujet?

+0

J'ai trouvé que je peux placer l'image sur une grille (grid1.Children.Add (imgpanel);), mais la méthode add ne me laisse pas spécifier une position pour cela. – directedition

Répondre

2

Puisque vous utilisez une grille, si l'emplacement souhaité pour l'image est (x, y), utilisez ce code:

imgpanel.Margin = new Thickness(x, y, 0, 0); 

Réglage de la marge de l'image par rapport à la grille provoquera la image pour se déplacer sur la grille.

Cela fonctionne également si l'image est ajoutée directement à la fenêtre.

1

pour spécifier position à l'intérieur d'une grille en C# vous pouvez écrire comme ça,

Je suppose que vous voulez ajouter une image dans la 2e rangée et 3e colonne

grid1.ColumnDefinitions.Add(new ColumnDefinitions()); 
grid1.ColumnDefinitions.Add(new ColumnDefinitions()); 
grid1.ColumnDefinitions.Add(new ColumnDefinitions()); 

grid1.RowDefinitons.Add(new RowDefinition()); 
grid1.RowDefinitons.Add(new RowDefinition()); 


imgpanel.SetValue(Grid.RowDefinitionProperty, 1); 
imgpanel.SetValue(Grid.ColumnDefinitionProperty, 2); 
grid1.Children.Add(imgpanel); 
Questions connexes