В качестве дополнения к ответу Джозефа также можно получить доступ к отдельным настройкам напрямую с помощью {x:Static }
с помощью класса статической обертки. Это позволяет использовать значения параметров, при которых привязка не будет работать, особенно анимации или свойства, которые не являются свойствами зависимости.
Основной подход:
public static class XamlSettings
{
public static MySettingsMember { get {return Properties.MySettings.Default.MySettingsMember; }}
}
, к которому вы затем обращаетесь в XAML под пространством имен, в котором находится класс-оболочка, в соответствии с <DoubleAnimation From="{x:Static local:XamlSettings.MySettingsMember}" ... />
.
В качестве дополнения к этому, попытка выставить Default напрямую не работает, возможно потому, что она не вполне «статична» - свойства по умолчанию - это свойства экземпляра, которые {x:Static}
не нравятся. Возможно, вы могли бы написать собственное расширение разметки, которое бы получало свойства экземпляра.
Это особенно полезно для основанного на ресурсах подхода к анимации, когда вы, строго говоря, не хотите связывать (который вводит в игру всевозможные проблемы с замораживанием), но при этом вы не хотите иметь много одиночных <sys:double x:Key="MyNumber">50.0</sys:double>
что-то вроде (или хотите избежать накладных расходов на объединенный словарь ресурсов уровня приложения, который, как я считаю, не просто создается один раз в приложении).