Я почти точно работал над этой проблемой (за исключением Blend, плюс использование свойства в ControlTemplate в XAML.)
В моем случае я заставил его работать, изменив ImageSource
на BitmapSource
. ImageSource абстрактный, BitmapSource расширяет ImageSource.
Однако что-то не так в этом. Тип Image.Source - ImageSource. Независимо от того, является ли он абстрактным, кажется, что я должен иметь возможность использовать свойство DependencyProperty типа ImageSource.
Итак, для моего собственного случая у меня это работает с BitmapSource
, но я все еще расследую.
РЕДАКТИРОВАТЬ: Надеюсь, вы не возражаете против ответа почти год после того, как вы спросили, +/- 12 часов. ;)
EDIT2: Джордж, я также заставил это работать на меня с ImageSource
, используя:
public static readonly DependencyProperty SourceProperty =
Image.SourceProperty.AddOwner(typeof(MyCustomButton));
public ImageSource Source
{
get { return (ImageSource)GetValue(SourceProperty); }
set { SetValue(SourceProperty, value); }
}