Вы также можете использовать Converter
Предполагая:
1) Каждая кнопка имеет префикс Btn
2) изображение имеет толькоодин формат
<Image Source="{Binding RelativeSource={RelativeSource FindAncestor,
AncestorType={x:Type Button}},Path=Name,Converter=
{StaticResource NameToPathConverter}}"/>
, тогда ваша кнопка будет выглядеть так:
<Button Name="BtnDestinationPin" Style="{StaticResource btnDefaultOperationImage}" />
Определить конвертер как ресурс:
<local:NameToPathConverter x:Key="NameToPathConverter"/>
Код:
public class NameToPathConverter : IValueConverter
{
public object Convert(object value, Type targetType, object parameter, CultureInfo culture)
{
string imageName = value.ToString().Substring(3);
return new BitmapImage(new Uri("pack://application:,,,/YourNamespace;component/Images/" + imageName + ".png"));
}
public object ConvertBack(object value, Type targetType, object parameter, CultureInfo culture)
{
throw new NotImplementedException();
}
}