선택할 도시 옵션과 함께 콤보 박스를 갖고 싶습니다. 옵션 중 하나는 빈 옵션 (도시 없음)입니다. itemsource는 "City"객체 목록에 바인딩됩니다. 목록에는 빈 옵션을 나타내는 null 값이 들어 있습니다. SelectedItem은 "City"유형의 속성에 바인딩됩니다. 콤보 박스에서 빈 옵션을 선택했을 때 상황을 제외한 모든 것이 작동합니다. SelectedItem에 바인딩 된 속성은 null 값으로 업데이트되지 않고 이전 선택 항목을 유지합니다. 어떻게 해결할 수 있을까요? null 값을 가진 Combobox - SelectedItem 바인딩
이 내 경험이 아닌 asnwer 그렉답변
주셔서 감사합니다.
<TextBlock Text="{Binding ElementName=_cbx, Path=SelectedItem}" Margin="20" />
<ComboBox x:Name="_cbx" ItemsSource="{Binding Cities}" HorizontalAlignment="Left" SelectionChanged="OnNewCity" />
내가 목록과 코드 숨김에서 도시라는 속성을 만들고 문자열과 널 (null)입니다 값을 작성 : 나는 다음과 같은 XAML 있습니다. null을 선택한 경우 SelectedItem은 ComboBoxItem입니다.
OnNewCity에서 SelectedItem을 기반으로 한 다른 텍스트 상자를 채우고 동일한 문제가 발생합니다.
XAML 및 코드에 대한 자세한 정보를 제공해 주시겠습니까?
편집 후 작성자의 의견 :
XAML을 이용해 주셔서 감사합니다. 같은 문자열을 사용했지만 문자열 목록 대신 City 클래스를 사용 했으므로 동일한 동작을 얻습니다. SelectedCity의 중단 점은 setter가 호출되지 않음을 나타냅니다. City 개체가 null 인 경우 SelectedItem 속성은 ComboBoxItem 유형이므로 내 생각에 WPF는 Setter를 호출하기 위해 ComboBoxItem과 호환되는 형식의 SelectedCity 속성을 찾습니다. 이 경우에는 찾을 수 없습니다. 코드 숨김을 변경하여 객체 유형의 SelectedCity를 설정했습니다. 이 경우 setter는 null 도시에서도 호출됩니다!
SelectedCity의 유형을 변경하는 것이 좋은 방법인지 확신하지 못합니다. Type 객체를 남용하지 않아야합니다. 그러나 유형 검사 후에 SelectedCity를 올바르게 설정하는 바인딩 (및 유형 객체)에만 사용되는 다른 속성을 가질 수 있습니다.
또 다른 좋은 해결책은 바운드 목록에 널 도시를 두는 것이 이치에 맞는지 고려하는 것입니다. 이것을 없앨 수 있습니까, 아니면 null이 될 특별한 이름의 특별 도시가 있습니까?
- 1. ComboBox selectedItem in Flex3
- 2. Silverlight ComboBox 강제 선택 SelectedItem
- 3. WPF ComboBox SelectedItem
- 4. WPF ComboBox SelectedItem binding
- 5. ComboBox SelectedItem vs SelectedValue
- 6. NULL 값을 가진 Concat 열
- 7. WPF Combobox 바인딩 질문
- 8. SelectedItem 속성의 속성에 바인딩
- 9. 하나의 선택에서 여러 값을 가진 ExtJs Combobox
- 10. Wpf 트리보기 selectedItem 데이터 바인딩
- 11. BindingNavigator가있는 상태에서 ListBox의 SelectedItem 바인딩
- 12. WPF ComboBox 열거 형에 바인딩
- 13. Combo에서 selectedItem을 사용하는 DataGrid selectedItem 바인딩
- 14. Wpf Combobox 데이터 바인딩
- 15. 기본 스타일 ListBox/ListView/ComboBox SelectedItem
- 16. ListView에서 Wpf Combobox 바인딩
- 17. DOM 문서에 Null 값을 가진 노드 부착
- 18. null 값을 가진 열이있는 테이블 수정
- 19. group_concat에 null 값을 가진 행이 반환되지 않았습니다.
- 20. DataGrid의 ComboBox 바인딩 RowDetailsTemplate
- 21. 사용 안 함 ComboBox 데이터 바인딩 된 SelectedItem 속성이 두 번 클릭으로 설정됩니다.
- 22. WPF ComboBox XML 바인딩 및 ViewModel 바인딩?
- 23. WPF - ComboBox 바인딩 문제
- 24. XAML ComboBox 속성에 바인딩
- 25. WPF Combobox SelectionChanged 레코드 바인딩
- 26. 개체가 개체의 인스턴스로 설정되지 않았습니다! ComboBox SelectedIndex SelectedItem
- 27. 가능한 null 속성을 가진 개체 그래프에 Windows 폼의 데이터 바인딩?
- 28. Silverlight Enum에 대한 Combobox 데이터 바인딩
- 29. DataContext와 LINQ to SQL을 사용하여 ComboBox 바인딩
- 30. Combobox SelectedItem을 필드 값으로 바인딩