Я определил несколько цветов в ResourceDictionary. например:Доступ к цветам в словаре ресурсов из преобразователя значений
<ResourceDictionary ...>
<Color x:Key=Gray1>#FFF7F1F3</Color>
<Color x:Key=Gray2>#FFDDD8DA</Color>
</ResourceDictionary>
Поэтому я могу использовать их везде в приложении.
Теперь я написал преобразователь значений, чтобы преобразовать внутреннее состояние элементов в соответствующий цвет.
Как я могу получить доступ к определенным цветам в коде преобразователя значений?
Моей первой мыслью было передать словарь в качестве параметра преобразователя. Но я не знаю, как этого добиться.
С уважением
EDIT
Application.Current.Resources
не вариант. Потому что у меня не будет доступа к нему позже.
Nice один. Это спасает мой день. Благодарю. – DHN
Только что наткнулся на это - я тоже пытаюсь добиться этого. Разве это решение не создает новый экземпляр каждого элемента в ResourceDictionary? Или WPF достаточно умен, чтобы признать, что он уже загружен, и использовать только один набор значений? – Ross
Visual Studio 2015 & 2017 выдает ошибку в режиме разработки: Невозможно наложить объект типа «OnDemandResourceDictionary» на тип «Microsoft.VisualStudio.DesignTools.Markup.DocumentModel.DocumentCompositeNode». Как победить? – yatskovsky