Suche mal im Netz nach "wpf imagebutton". Da wirst du eine ganze Reihe von Beispielen finden, wie man so etwas umsetzt.
Um den Text im Label zu setzen solltest du die TemplateBinding-Extension verwenden. Der Label-Code sieht dann so aus:
<Label HorizontalAlignment="Left" VerticalAlignment="Center" Content="{TemplateBinding Content}"/>Um
ein Image auf den Button zu bekommen, ist es einfacher eine von
"Button" abgeleitete Klasse zu schreiben, die eine DependencyProperty
besitzt:
public class ImageButton : Button
{
public ImageSource Image
{
get { return base.GetValue(ImageProperty) as ImageSource; }
set { base.SetValue(ImageProperty, value); }
}
public static readonly DependencyProperty ImageProperty = DependencyProperty.Register("Image", typeof(ImageSource), typeof(ImageButton));
}
Damit kannst das Image im Xaml-Code
<Image Margin="0,0,25,0" Source="{TemplateBinding Image}"/>
und in C#-Code setzen:
btn.Image = mySource;
Ciao,
Jens