0
SubSonic 3에서 생성 한 IQueryable 결과를 WPF ComboBox 또는 DataGrid의 ItemsSource에 바인딩하면 선택한 항목을 다음과 같이 변경할 수 없습니다. ComboBox 또는 DataGrid를 여러 번 사용할 수 있습니다. SubSonic 3.0.0.3과 ActiveRecord를 사용하고 있습니다. 내 코드에서SubSonic 3 및 WPF ItemsSource (ComboBox, DataGrid) - 선택한 항목이 두 번 이상 업데이트되지 않습니다.
: 내 XAML에서
var foo = FooDB.Customer.All();
FooComboBox.ItemsSource = foo;
:
<ComboBox DisplayMemberPath="CustomerName" Name="FooComboBox" />
단계 재현 :
- 응용 프로그램 실행
다음은 예입니다. 참고 (처음에는) 내 ComboBox에서 선택된 항목이 없습니다.
- ComboBox를 클릭하십시오. 드롭 다운은 여러 고객 이름과 함께 나타납니다.
- 드롭 다운 메뉴에서 고객 이름 X를 선택하십시오. 드롭 다운이 사라지고 X가 선택됩니다.
- ComboBox를 다시 클릭하십시오. 드롭 다운이 나타납니다.
- 드롭 다운 메뉴에서 고객 이름 Y를 선택하십시오. 드롭 다운이 사라지지만 X는 계속 선택됩니다.
미리 감사드립니다.
조금 더 자세히 : 나는 (고객 인스턴스를 가져 오거나 설정하는 하나의 속성을 포함하는) SubSonic 생성 된 고객 클래스를 래핑하는 간단한 클래스를 작성하여 컬렉션에 넣고 해당 컬렉션을 ItemsSource에 할당했습니다. ComboBox의 이 해킹으로 ComboBox가 예상대로 작동합니다. 하지만 왜? Items 클래스에 문제를 일으키는 Customer 클래스의 속성/메소드 중 하나입니까? (가능한가?) – sparks