WPF/개발

WPF enum DataTrigger Binding 하는 방법

푸코잇 2024. 2. 7. 17:27
728x90

WPF에서 enum을 DataTrigger Binding 하는 방법에 대해 알아보자.

namespace EnumTest
{
    public enum Type
    {
        DIRECTORY,
        FILE,
    }
}

 

EnumTest 네임스페이스에 Type 열거형이 있다.

 

xmlns:enum="clr-namespace:EnumTest"

 

xaml파일에서 EnumTest 네임스페이스를 추가한다.

 

<TextBlock>
    <TextBlock.Style>
        <Style TargetType="TextBlock">
            <Style.Triggers>
                <DataTrigger Binding="{Binding SelectedType}" Value="{x:Static enum:Type.DIRECTORY}">
                    <Setter Property="Text" Value="디렉토리입니다"/>
                </DataTrigger>
                <DataTrigger Binding="{Binding SelectedType}" Value="{x:Static enum:Type.FILE}">
                    <Setter Property="Text" Value="파일입니다"/>
                </DataTrigger>
            </Style.Triggers>
        </Style>
    </TextBlock.Style>
</TextBlock>

 

열거형 Type인 SelectedType 필드를 바인딩한 경우 DataTrigger에서 x:Static을 이용해 비교할 수 있다.