Подтвердить что ты не робот

Что означает "{x: Static}" в XAML?

Что означает {x:Static} в XAML?

Пример кода:

<SolidColorBrush Color="{x:Static SystemColors.ControlColor}" />
4b9b3361

Ответ 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.