XAML에서 명령 매개 변수로 열거 형 값 전달


182

다음과 같이 WPF에서 열거 형 값을 명령 매개 변수로 전달하고 싶습니다.

<Button 
    x:Name="uxSearchButton" 
    Command="{Binding Path=SearchMembersCommand}" 
    CommandParameter="SearchPageType.First"
    Content="Search">
</Button>

SearchPageType 는 열거 형이며 어떤 버튼 검색 명령이 호출되는지 알아야합니다.

WPF에서 가능합니까? 아니면 열거 형 값을 명령 매개 변수로 전달할 수 있습니까?

답변:


285

이 시도

<Button CommandParameter="{x:Static local:SearchPageType.First}" .../>

local-XAML 의 네임 스페이스 참조 입니다.


이 네임 스페이스 my.namespace에 "MyEnum"이라는 열거 형이있는 경우 "local"을 정의하는 방법은 무엇입니까?
04 분

171

또한 열거 형이 다른 클래스 안에 있으면 +연산자 를 사용해야한다는 것을 기억하십시오 .

<Button CommandParameter="{x:Static local:MyOuterType+SearchPageType.First}".../>

46

이를 위해 속성 구문 대신 속성 요소 구문을 사용할 수 있습니다.

<Button x:Name="uxSearchButton"
        Command="{Binding Path=SearchMembersCommand}"
        Content="Search">
    <Button.CommandParameter>
        <SearchPageType>First</SearchPageType>
    </Button.CommandParameter>
</Button>

31

또한 [ Flags] 열거 형 을 제공하려는 경우 속성 요소 구문을 사용할 수 있습니다.

<Button>
  <Button.CommandParameter>
    <SearchPageType>First,Second</SearchPageType>
  <Button.CommandParameter>
</Button>
당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.