Ласкаво просимо до dev.net.ua Увійти | Приєднатися | Допомога

Задание значений свойств в XAML с использованием объединения флагов по ИЛИ

Для того, чтобы задать значение свойства путем комбинации двоичных флагов в XAML, имена необходимых элементов нужно перечислить через запятую.

Например,

// C#

MyType myObject = new MyType();

myObject.MyFlags = MyTypeFlags.Flag1 | MyTypeFlags.Flag2 | MyTypeFlags.Flag3;

// XAML

<MyType MyFlags=“Flag1, Flag2, Flag3“ />

Как видите, здесь все просто. Вот только проблема в том, что разработчики не включили в документацию по WPF описание этой возможности. Для того, чтобы понять как это сделать, нужно обладать знаниями по работе метода Enum.Parse(), которые в общем выражаются следующим образом (текст из документации по Enum):

“You can use the static Parse method to initialize a Boolean type to the value of a string. This method accepts the enumeration type you are parsing, the string to parse, and an optional Boolean flag indicating whether or not the parse is case-sensitive. The string you are parsing can contain several values separated by commas, which can be preceded or followed by one or more empty spaces (also called white spaces). When the string contains multiple values, the value of the returned object is the value of all specified values combined with a bitwise OR operation.”

Таким образом, эта функциональность вообще не была специально реализована в WPF, а просто «наследуется» от базовой библиотеки типов. Видимо, поэтому это и не описано явно в документации по WPF, но хотелось бы, чтобы ситуация изменилась.

Опубліковані Friday, November 03, 2006 8:00 AM від EugeneZ
Помічено як: ,

Коментарі

# re: Задание значений свойств в XAML с использованием объединения флагов по ИЛИ

Надо же, Евгений.

Вы не только на семинаре - но и в своем блоге упели отметиться :-)

Friday, November 03, 2006 8:55 AM by Дмитрий Пасько

# re: Задание значений свойств в XAML с использованием объединения флагов по ИЛИ

Early bird catched the worm :)

Friday, November 03, 2006 12:25 PM by EugeneZ
Анонімні коментарі деактивовані. Увійдіть або Зареєструйтесь щоб мати доступ до ресурсів Спільноти.