В вашем контроле назовите ваше изображение как:
<Image x:Name="someImage" Source="{Binding Path=MyImageSource}" ></Image>
Реализуйте свойство зависимости как Uri:
public static readonly DependencyProperty MyImageSourceProperty =
DependencyProperty.Register("MyImageSource",
typeof(Uri),typeof(UserControl1),
new FrameworkPropertyMetadata(new PropertyChangedCallback(OnImageSourceChanged)));
И в OnImageSourceChanged:
private static void OnImageSourceChanged(DependencyObject sender, DependencyPropertyChangedEventArgs e)
{
UserControl1 userControl = (UserControl1)sender;
userControl.someImage.Source = new BitmapImage((Uri) e.NewValue);
}
Таким образом, вы можете указать строковый путь к свойству зависимости, которое будет автоматически преобразовано в Uri.
EDIT:
В Image свойство source реализовано как ImageSource вместо Uri (абстрактный класс, из которого также вытекает ваша реализация, т.е. BitmapSource). Он также реализует событие OnSourceChanged так же, как я реализовал событие для Uri. Вывод таков: вам нужно будет использовать событие изменения, если вы хотите установить источник изображения.