2011-10-16 5 views
0

나는 Listbox를 포함하는 View를 가지고 있습니다. CityListingPage.xaml이라고하겠습니다. 이것은 잘 작동UserControl에서 ViewModel의 DataContext를 설정하십시오.

DataContext="{Binding CityListing, Source={StaticResource Locator}}" 

:이 목록 페이지 다소 같은 같은보기와 바인더 제본 된 CityListingViewModel을 가지고 있습니다. 이제 피벗 항목, 피벗 컨트롤, CityListingViewModel,하지만 다른 생성자 데이터 (예 : 국가)의 인스턴스를 내 피벗 컨트롤로 변경하려면

나는 ListBox를 UserControl로 추출했습니다. 이제는 각 목록에 대해 CityListingViewModel의 새 인스턴스를 가져올 수 있도록이 작업을 수행하는 방법을 고민하고 있습니다.

CityListingViewModels 컬렉션을 ViewModelLocator에서 만들려고했지만 CityListingViewModel 인스턴스를 UserControls DataContext에 전달하는 방법은 무엇입니까?

아마도이 작업을 수행하는 다른 방법이 있을까요?

답변

1

코드를 보지 않고 조금 추측 할 것이지만 데이터 바인딩을 통해 직접 할 수 있다고 생각합니다. 조금 더 많은 코드가 당신이 뭘하려는 건지 보여주는 게시 할 경우

, 우리는 할 수 있습니다 각 피벗 항목이 CityListingViewModel의 인스턴스를지고 있기 때문에, 당신은 단지 해당 UserControl에 따라 제본하는 것을 전달할 수 있습니다 더 많은 도움이 될 수 있습니다.

0

피벗 페이지의 여러보기에서 동일한 데이터를 분할하려는 경우 여러 가지보기 모델을 사용하지 말 것을 제안합니다. 특히 모든 데이터에 대해 동일한 데이터 소스 인 경우 특히 유용합니다.

각보기가 바인딩 할 매개 변수를 가지고 Linq를 사용하여 해당 매개 변수에서 볼 수있는 데이터를 제어하십시오.

그러면 표시 할 모든 데이터를 포함하는 변수와 해당 데이터를 쿼리하는 뷰 당 하나의 매개 변수가 생깁니다.

관련 문제