У меня есть эта библиотека с пользовательскими Color свойствами. Я хочу использовать эти свойства в XAML следующим образом:
<Style TargetType="{x:Type eg:MyWindow}">
<Setter Property="Background">
<Setter.Value>
<SolidColorBrush Color="CustomClass.CustomColorProperty"/>
</Setter.Value>
</Setter>
</Style>
На пространство имен, содержащее CustomClass , уже ссылаются. Как я должен идти об этом? Спасибо.
EDIT:
Я только что заметил, что CustomClass является статическим, поэтому я не могу создать его экземпляр в XAML. Кроме того, когда я набираю например: , CustomClass не отображается в intellisense. Я не могу заставить ваши решения работать, даже если бы они работали, если бы у меня был экземпляр класса. Есть ли обходной путь для этой ситуации?
РЕДАКТИРОВАТЬ 2:
Это фактический класс и пространство имен:
namespace Assergs.Windows
{
public static class OfficeColors
{
public class Background
{
public static Color OfficeColor1 = (Color)ColorConverter.ConvertFromString("#e4e6e8");
public static Color OfficeColor2 = (Color)ColorConverter.ConvertFromString("#dce0ed");
public static Color OfficeColor3 = (Color)ColorConverter.ConvertFromString("#a8c3e0");
}
}
}
И это пространство имен XAML:
xmlns:aw="clr-namespace:Assergs.Windows;assembly=Assergs.Windows"
А если я воспользуюсь этой строкой, как подсказал Зенука:
<SolidColorBrush Color="{x:Static aw:OfficeColors.Background.OfficeColor1}"/>
Выдает эту ошибку во время компиляции:
Cannot find the type 'OfficeColors.Background'. Note that type names are case sensitive.