2009-07-07 10 views
1

두 개의 다른 콤보 중에서 선택 항목에 채워지는 콤보 상자가 있습니다. ' 문제 없습니다. 작동하고 있습니다. 문제가 발생한 후 선택한 항목 바인딩을 활성화하려는 경우에만 문제가 발생합니다. 여기WPF ComboBox 코드에서 선택한 항목을 바인딩하는 방법?

<cuc:ComboBox Name="GopLenTypeCombo" Width="240" Height="24" 
         IsSynchronizedWithCurrentItem="True" 
         SelectedValue="{Binding Mode=TwoWay, Source={StaticResource ProfileDataProvider}, XPath=GopLenType}" 
         IsEnabled="False"/> 

어떻게 내가 콤보를 채운 전까지 SelectedValue 바인딩 작업을 멈추지 내 콤보입니까?

답변

1

나는이 순수 XAML에서 수 있는지 모르겠지만, 당신은 기본 뷰 모델이있는 경우,이 너무 어렵지 않을 것입니다 : 당신이 할 필요가하면에 세 번째 콤보 상자를 결합하는 것입니다

ViewModel의 속성 (이 속성을 Combo3Items라고 부르 자).

또한 첫 번째 ComboBox 두 개를 동일한 ViewModel의 속성에 바인딩해야합니다 (이 Combo1Items 및 Combo2Items를 각각 호출 해 보겠습니다). 이 외에도, 이러한 ComboBox의 SelectedValue를 ViewModel의 속성에 바인딩하여 ViewModel이 어떤 항목이 선택되었는지 알 수 있습니다.

처음에는 Combo3Item이 비어 있지만 두 개의 바운드 SelectedValues가 올바르게 지정 되 자마자 Combo3Items를 채우고 INotifyPropertyChanged 이벤트를 발생시킬 수 있습니다.

MVVM 아키텍처는 매우 강력합니다. 아직 모르는 경우 here에 대해 자세히 알아볼 수 있습니다.

관련 문제