[WPF] Binding Converter 정리

jiho·2020년 3월 25일
0

WPF

목록 보기
1/1

WPF를 공부하기 시작했습니다.
이번 포스트에서는 Binding Converter에 대해 정리해보겠습니다.

Reference site
https://docs.microsoft.com/ko-kr/dotnet/framework/wpf/data/how-to-convert-bound-data

Sample Code
https://github.com/microsoft/WPF-Samples/tree/master/Data%20Binding/BindConversion

바인딩 컨버터는 간단히 바인딩되어있는 관계에서
source -> convert -> target
중간 데이터를 처리해줍니다.

어떻게 사용하느냐에 따라 용도는 굉장히 다양해집니다. 특정값 범위에 있을 때 Boolean이 True가 되거나 False가 되는 형태로도 할 수 있고 값을 보간하는 효과도 가질 수 있습니다.

아래 코드 샘플은 Microsoft WPF Sample코드입니다. 사용자 정의 Converter를 생성해서 바인딩에 이용하고 있습니다.


    <StackPanel Width="300" Height="300" Name="Page1">
        <StackPanel.Resources>
            <local:MyData x:Key="MyDataSource"/>
            <local:MyConverter x:Key="MyConverterReference"/>
        </StackPanel.Resources>

        <StackPanel.DataContext>
            <Binding Source="{StaticResource MyDataSource}"/>
        </StackPanel.DataContext>

        <TextBlock Name="myconvertedtext"
    Foreground="{Binding Path=TheDate,
                         Converter={StaticResource MyConverterReference}}">
        </TextBlock>

    </StackPanel>

다른 코드는 모두 잘라내고 converter가 쓰이는 부분만 보여줬습니다.
Converter를 XAML상에서 선언하고 값에 따라 TextBlock의 글자색이 다르게 보이는
기능을 구현한 부분입니다.

profile
Scratch, Under the hood, Initial version analysis

0개의 댓글