В XAML я делаю это так:Как ссылаться на StaticResource в коде?
<Button Style="{StaticResource NavigationBackButtonNormalStyle}" />
Как сделать то же самое в коде-позади?
В XAML я делаю это так:Как ссылаться на StaticResource в коде?
<Button Style="{StaticResource NavigationBackButtonNormalStyle}" />
Как сделать то же самое в коде-позади?
Объект Ресурсы на уровне страницы имеет возможность находить локальные, прикладные, статические и тематические ресурсы. Это означает, что вы просто делаете это:
foo2.Style = this.Resources["NavigationBackButtonNormalStyle"] as Style;
Удачи!
Во время разработки кажется, что попытка решить «системный ресурс» с использованием Resources[key]
не сможет найти ресурс и вернет null
. Например, чтобы получить базу Style
для TextBox
с использованием Resources[typeof(TextBox)]
, возвращается null
.
Вместо этого используйте TryFindResource(key)
, так как это будет первый попробовать Resources[key]
, а затем будет иначе пытаться искать через «системные ресурсы» и вернуть то, что вы ищете (как в MSDN и Reference Source).
Другими словами, попробуйте вместо этого:
var style = Application.Current.TryFindResource(key) as Style;