Я хочу передать значение перечисления в качестве параметра команды в WPF, используя что-то вроде этого:
<Button
x:Name = "uxSearchButton"
Command = "{Binding Path=SearchMembersCommand}"
CommandParameter = "SearchPageType.First"
Content = "Search">
</Button>
SearchPageType - это перечисление, и оно предназначено для того, чтобы знать, из какой кнопки поиска вызывается команда.
Возможно ли это в WPF или как передать значение перечисления в качестве параметра команды?





Попробуй это
<Button CommandParameter = "{x:Static local:SearchPageType.First}" .../>
local - это ваш ссылка на пространство имен в XAML
Для этого можно использовать синтаксис элемента свойства вместо синтаксиса атрибута:
<Button x:Name = "uxSearchButton"
Command = "{Binding Path=SearchMembersCommand}"
Content = "Search">
<Button.CommandParameter>
<SearchPageType>First</SearchPageType>
</Button.CommandParameter>
</Button>
Также помните, что если ваше перечисление находится внутри другого класса, вам нужно использовать оператор +.
<Button CommandParameter = "{x:Static local:MyOuterType+SearchPageType.First}".../>
Также, если вы хотите предоставить перечисление [Flags], вы можете использовать синтаксис элемента свойства:
<Button>
<Button.CommandParameter>
<SearchPageType>First,Second</SearchPageType>
<Button.CommandParameter>
</Button>
Если у меня есть перечисление с именем «MyEnum» в этом пространстве имен my.namespace, как определить «local»?