Witam. Od wczoraj staram się rozwiązać problem, który przyprawia mnie o ból głowy. Otóz Chcę stworzyć nową User Control oczywiście w WPF. Kontrolka ta ma być Menu itemem, ma wyświetlać ikonkę, a obok ma być wyświetlana nazwa menu. A więc stworzyłem tą kontrolkę i postanowiłem wszystko oprzeć na DependencyProperty, bo wiadomo, że menu stworzę raz w Design time i to tyle. Jednakże Mimo stworzenia dependency property to XAML w design time wykrywa daną zmienną, podpowiada jej nazwę więc wpisuję link do zdjęcia i na tym się kończy to co powinno działać. Aplikacja się kompiluje bez żadnego problemu, ale zdjęcie się nie ładuje. Próbowałem w tej custom controlce wpisać link do zdjęcia i wtedy normalnie w design time się pojawia to zdjęcie, więc to nie problem, że nie znajduje zdjęcia. Poniżej podsyłam kod:
C# :
public ImageSource IconImageSource
{
get { return (ImageSource)GetValue(IconImageSourceProperty); }
set { SetValue(IconImageSourceProperty, value); }
}
// Using a DependencyProperty as the backing store for IconImageSource. This enables animation, styling, binding, etc...
public static readonly DependencyProperty IconImageSourceProperty =
DependencyProperty.Register("IconImageSource", typeof(ImageSource), typeof(NavigationMenuItem), new PropertyMetadata(0));
XAML custom controlki
<Image Name="img_Icon" Source="{Binding IconImageSource}" Width="64" Height="64"/>
XAML w miejscu, gdzie umieszczam tą kontrolkę:
<local:NavigationMenuItem IconImageSource="/res/DarkMode/NavigationMenuItem_Home.png"/>
Starałem się również zrobić to poprzez PropertyChangedHandler, aczkolwiek wymagany jest static i wtedy wszystko się sypię bo tracę dostęp do zmiennych niestatycznych w tej klasie. Bardzo proszę o pomoc, bo serio już tracę nadzieję, że kiedyś to zrozumiem.