ConverterTemplate 내부의 항목 속성에 변환기 매개 변수를 설정하려고합니다. ConverterParameter가 종속성 속성이 아니므로 바인딩이 작동하지 않습니다.
하지만 실제로 바인딩이 필요하지 않습니다. 한 번 설정하면 변경되지 않으므로 충분할 것입니다.ConverterParameter : ItemTemplate 내에서 설정
<ItemsControl ItemsSource="ItemsWithTypeProperty">
<ItemsControl.ItemTemplate>
<DataTemplate>
<RadioButton IsChecked="{Binding SelectedItem.Base.Type, Converter={l:IsEqualConverter}, Mode=TwoWay, ConverterParameter={Type}}" />
</DataTemplate>
</ItemsControl.ItemTemplate>
</ItemsControl>
IsEqualConverter :
변환은 : 매개 변수에 값을 비교하고 그 결과를
ConvertBack를 반환 값이 true 인 경우이 매개 변수
ItemTemplate을의 DataContext에에게 반환 포함하는 클래스입니다 「Type」라는 이름의 프롭퍼티
유형이 object입니다.
{Type}을 (DataContext)로 설정하는 방법으로 바꿀 방법이 있습니까? 한 번 입력하십시오. 그렇다면 어떻게?
......, ConverterParameter=Type}" />
을 그리고 당신의 변환기에 :
유형이 상수가 아닙니다. 이 경우 유형은 DataContext 객체의 "유형"이름을 갖는 속성을 의미합니다. 멀티 바인딩은 또한 나의 첫 번째 생각 이었지만 그 문제는 내가 다시 변환 할 수 없다는 것이다. ConvertBack은 bool 값만 제공하고 필요한 객체로 다시 변환하기에는 충분하지 않습니다. – Arokh
그럴 경우 OK입니다. 드로잉 보드로 돌아가거나 실제로해야한다면 ConverterParameter를 바인딩 할 수있는 해킹이 있습니다. http://marlongrech.wordpress.com/2008/08/03/my-wish-came-true-i-can-now-use-databinding-in-a-converterparameter/을 참조하십시오. –