Что означает "{x: Static}" в XAML?
Что означает {x:Static}
в XAML?
Пример кода:
<SolidColorBrush Color="{x:Static SystemColors.ControlColor}" />
Ответы
Ответ 1
Это способ вставить любое статическое значение в XAML. Например, если у меня есть класс:
namespace A
{
public class MyConstants
{
public static readonly string SomeConstantString = "BAM!";
}
}
Я могу разместить его в пользовательском интерфейсе WPF с помощью XAML, например:
<TextBlock Text="{x:Static A:MyConstants.SomeConstantString}" />
Обратите внимание: вам нужно будет импортировать пространство имен, в котором MyConstants определено в вашем XAML. Таким образом, в элементе или выполните что-то вроде:
xmlns:A="clr-namespace:A"
Ответ 2
Из MSDN: http://msdn.microsoft.com/en-us/library/ms742135.aspx
Ссылки на любой объект статического по значению кода, определенный в стандарте Common Language Specification (CLS). Указанное свойство оценивается до загрузки оставшейся части страницы XAML и может использоваться для предоставления значения свойства в XAML.
Ответ 3
Я нашел вопрос XAML - доступ к статическим полям, имеющий ответ, который ссылается на документацию MSDN x: Расширение статической разметки. Я полагал, что это все равно будет полезно на сайте.