ConvererParameter에는 바인딩을 걸지 못한다.
그래서 사용할수 있는방법은 멀티 바인딩을 이용하면 된다.
1 2 3 4 5 6 7 8 9 10 11 12 13 | public class GlobalImageNameConverter : IMultiValueConverter { public object Convert(object[] values, Type targetType, object parameter, CultureInfo culture) { var temp = values[0]; return values[0]; } public object[] ConvertBack(object value, Type[] targetTypes, object parameter, CultureInfo culture) { throw new NotImplementedException(); } } |
이런식으로 IMultiValueConverter Interface를 구축한후
Style안에는
1 2 3 4 5 6 7 8 | <Image x:Name="img" Stretch="None"> <Image.Source> <MultiBinding Converter="{StaticResource GlobalImageNameConverter}"> <Binding Path="NormalImage" RelativeSource="{RelativeSource TemplatedParent}" /> <Binding Path="IsDisable" RelativeSource="{RelativeSource TemplatedParent}" /> </MultiBinding> </Image.Source> </Image> |
이렇게 구현했다.
RelativeSource="{RelativeSource TemplatedParent}" 이부분은 templatebinding이라서 넣은것이고 일반 바인딩일경우에는 없앤다.
'wpf' 카테고리의 다른 글
WPF에서 GIF 돌리기 컨트롤 (1) | 2018.05.02 |
---|---|
Xaml에 Binding을 하지 않고 컨버터를 쓰고 싶을때 (0) | 2018.03.07 |
전광판같이 스크롤이 넘겨가는듯한 컨트롤 (0) | 2018.02.20 |
WPF에서 MiniDump 뜨는법 (0) | 2018.01.02 |
다중 모니터에서 전체 화면 실행 (0) | 2017.12.07 |