내가 콤보 박스를 가지고가,이 itemsource 사용자 정의 클래스의 ObservableCollection에 < T>에 바인딩 된, 하나 개의 속성은> 목록 < myenum입니다.
콤보 상자의 선택한 항목 목록 < myenum> 속성에 데이터 바인딩되는 itemscontrol이 있습니다.
itemscontrol 데이터 템플릿은 라디오 버튼의 목록을 생성하며 각 라디오 버튼은 목록의 개별 열거 형 값을 나타냅니다.
소망 :
나는 ItemsControl에 소스가 업데이트되는 콤보 상자의 값을 변경. 내가 원하는 것은 새 itemscontrol 소스의 라디오 버튼이 이전 목록 (업데이트되기 전에)에서 선택된 라디오 부턴과 같은지 확인하는 것입니다.
현재 아이디어 :
Asign과 비교 될 수있는 창 클래스의 myenum 속성을 유지하는 라디오 버튼에 체크 이벤트. 라디오 박스의 IsChecked 속성을 변환기에 바인딩하고 myenum 속성과 비교합니다. 이를 달성하기 위해 창 클래스를 IValueConverter에서 확장했습니다. 이렇게하면 변환기 함수가 myenum 속성에 액세스 할 수 있습니다.
문제 :
나는 컨버터로 창을 사용하는 바인딩의 IsChecked을 얻을하는 방법을 모르겠어요. 나는 바인딩의 변환 부분에 상대적으로 소스를 사용하여 시도,하지만 IsChecked="{Binding Converter={RelativeSource={RelativeSource Self}}}"
선호하는 답변이 작동하지 않습니다 : 그것은이 방법으로 가능하다면 바인딩 구문을 수정에
지원합니다.
내가 원하는 것을 달성하는보다 적절한 방법에 대한 아이디어.
이것은 내가 결국했다 경로입니다. Mode = OneWay 바인딩을 변경해야했습니다. 그러나 이제는 모두 작동합니다. – Psytronic