2011-06-15 5 views
-1


저는 WPF (C#)를 처음 사용하고 MVVM을 사용하려고합니다.
다음은 내가 가지고있는 도전 과제입니다.
두 개의 목록 상자에 제품 이름이 포함되고 다른 하나에는 제품 매개 변수가있는 것으로 가정합니다.
제품 매개 변수는 이름 및 값입니다 (텍스트 상자 또는 확인란).
사용자가 원하는 기능 :
1. 제품을 선택하고 매개 변수를보고 편집하십시오. 옵션을 사용하면 일부 매개 변수를 편집하고 모두 bnot을 수정할 수 있습니다.
2. 여러 제품을 선택하고 몇 가지 매개 변수를 편집하십시오.
즉, 일대일, 일대 다, 많음, 많음, 많음을 지원하십시오.
목록 상자는 다른 컨트롤을 제안 할 수있는 아이디어 일뿐입니다.
바인딩으로 어떻게 할 수 있습니까? 좋은 예가 있습니까?
감사합니다.wpf 바인딩 지원 많은 객체를 많이 저장합니다.

+0

@lgal 'viewmodel'에서 일부 코드를 추가 할 수 있습니까? – aligray

+0

사실 나는 디자인 단계에 있으며 아직 코드를 가지고 있지 않습니다. 나는 시작하는 법을 모르기 때문에 기본적인 개념을 찾고 있습니다. 도와주세요. 감사. – Igal

+0

당신의 질문은 다소 일반적인 것이지만 좀 더 자세한 내용이 필요 하겠지만 모든 세부 사항을 포함하는'Product' 객체가 있다면'ListBox'의'ItemsSource'를 묶는'TwoWay' 바인딩을 정의 할 수 있습니다. 'ObservableCollection '이 당신을 위해 속임수를 쓰면, 적절한'TextBox'를 귀하의 제품 세부 사항에 바인딩하면 모든 것이 자동으로 업데이트됩니다 (이것은 DataBinding의 진정한 powerzz입니다 :)) – Damascus

답변

0
<ListBox ItemsSource="{Binding Customers}" x:Name="customersList"/> 
    <ListBox x:Name="customersDetails" ItemsSource="{Binding ElementName=customersList,Path=SelectedItems}"> 
     <ListBox.ItemTemplate> 
      <DataTemplate> 
       <PropertyGrid IsEditable ="{Binding CanEditCustomer}" SelectedItem ="{Binding}"/> 
      </DataTemplate> 
     </ListBox.ItemTemplate> 
    </ListBox> 

첫 번째 목록에는 모든 고객이 포함됩니다. 두 번째 목록에는 선택한 고객의 속성에 대한 편집기가 포함되어 있습니다.

관련 문제