Ответы ....
1)
Вы сказали ...
... Это означает, что если у меня есть класссо статическими свойствами я мог бы использовать что-то вроде этого:
<Button ... Foreground="{x:Static MyClass.SomeStaticProperty}" >
Но это не сработало, несмотря на то, что я создал класс, я попытался использовать local: Static (ссылаясь на локальное пространство имен), но VisualStudio не позволил мне его использовать.Каков правильный способ достижения этого?
Что ж, ваша пробная попытка была правильной, но неверно, к какому сроку вы применили этот маркер пространства имен к .... local
маркер пространства именотносится к классу, который объявлен под ним так ...
<Button ... Foreground="{x:Static local:MyClass.SomeStaticProperty}" >
Должно работать нормально, если SomeStaticProperty
является допустимым Brush
.
В этом примере, весьвнутренняя разметка была эквивалентна Binding
как ...
Binding.Source = {x:Type local:MyClass}
Binding.Path = SomeStaticProperty.
2)
У вас был пример ...
<TextBlock Text="{Binding Source={x:Static SystemFonts.IconFontFamily},
Path=Source}">
</TextBlock>
Так что используйте ту же эквивалентность из примера 1 и примените ее к этому примеру ...
<TextBlock Text="{Binding Source={x:Type SystemFonts},
Path=IconFontFamily.Source}">
</TextBlock>
3)
Я узнал всю эту вещь из MSDN ..Я не думаю, что у нас может быть какой-либо другой законный источник, кроме этого.