Je suis très nouveau à WPF, alors s'il vous plaît garder avec moi.WPF définir l'image pour un bouton dans le code C# derrière à l'exécution
Fondamentalement, j'ai défini un style dans un pour afficher les boutons WPF UserControl avec une image comme suit:
<UserControl.Resources>
<Style TargetType="Button">
<Setter Property="Template">
<Setter.Value>
<ControlTemplate TargetType="Button">
<TextBlock HorizontalAlignment="Center" VerticalAlignment="Center">
<Image Width="16" Height="16" Stretch="UniformToFill"/>
<ContentPresenter/>
</TextBlock>
</ControlTemplate>
</Setter.Value>
</Setter>
</Style>
</UserControl.Resources>
-je ajouter ensuite une charge de boutons à une grille à l'exécution (il doit être au moment de l'exécution comme le nombre et le type de bouton est dynamique).
Ce que je voudrais faire est également de définir l'image des boutons lors de l'exécution. J'ai essayé plusieurs façons, mais aucune ne semble fonctionner. Définir la source dans le Xaml fonctionne très bien. Le code que je suis en train est la suivante:
Button b = new Button();
// Create source.
BitmapImage bi = new BitmapImage();
bi.BeginInit();
bi.UriSource = new Uri(@"C:\SourceCode\DSA\DSALibrary\Icons\money.png");
bi.EndInit();
b.SetValue(Image.SourceProperty, bi);
Quelqu'un pourrait me diriger vers l'endroit où je vais mal, si je devais deviner, je dirais que là où je pense que je suis la mise en valeur, je Je ne suis pas vraiment.
Vive
Quel type est B'? Votre bouton dérivé UserControl? –
Le problème est que Button n'est pas une image .. Et vous essayez de définir une propriété étrange (pour le bouton) sur b .. Vous pouvez définir le bitmap sur le contenu du bouton et utiliser un datatemplate (voir réponse) – Arcturus
Modifié pour afficher ce que B. @ Arcturus, je pensais que ce pourrait être le problème, je n'étais pas sûr de savoir comment je vais le faire, si les modèles de données sont la voie à suivre, merci beaucoup. – MrEdmundo