2017-10-03 24 views
-3

ICommand를 WPF (4.5) ComboBoxItem에서 어떻게 구현할 수 있습니까? 나는 CommandBinding을 시도하지만, 아래 그림과 같이 나는ComboBoxItem에 대한 WPF ICommand 구현

+0

은 당신의 코드를 게시하시기 바랍니다 - ComboBoxItem의 어떤 속성을 바인딩하려고합니까? – auburg

+1

[WPF ICommand MVVM 구현]의 가능한 복제본 (https://stackoverflow.com/questions/1468791/wpf-icommand-mvvm-implementation) – rmjoia

+0

버튼에서 사용자 입력을 처리하는 데 사용되는 명령 (주로) (?)는 ComboBox에서 항목을 선택할 때 실행됩니다. 이벤트를 발생 시키거나 데이터 바인딩을 사용하는 것이 좋습니다. – Bojje

답변

-1
  1. 이 System.Windows.Interactivity에 참조 추가 "CommandBinding을 '. A'바인딩 '는 DependencyObject에의 DependencyProperty를에만 설정할 수 있습니다 명령'유형의 속성을 '"오류 메시지가 표시 enter image description here
  2. 다음 Windows.xaml에서 아래 라인을 추가하십시오. 이 XAML

    xmlns:i="clr-namespace:System.Windows.Interactivity;assembly=System.Windows.Interactivity" 
    

에 대한 참조를 추가하고 당신의 XAML은 enter image description here

아래에 주어진 그리고 귀하의 콤보 상자의 XAML 같은 일처럼 될 것입니다 : -

<ComboBox Name="myComboBox" SelectedValuePath="Content"> 
     <i:Interaction.Triggers> 
     <i:EventTrigger EventName="SelectionChanged"> 
      <i:InvokeCommandAction Command="{Binding YourCommandName}" 
      CommandParameter="{Binding ElementName=myComboBox, 
       Path=SelectedValue}"/> 
     </i:EventTrigger> 
    </i:Interaction.Triggers> 
    <ComboBoxItem Content="ItemOne" /> 
    <ComboBoxItem Content="ItemTwo" /> 
    <ComboBoxItem Content="ItemThree" /> 
</ComboBox> 
+0

{ "파일 또는 어셈블리 'System.Windows.Interactivity, Version = 4.0.0.0, Culture = neutral, PublicKeyToken = 31bf3856ad364e35'또는 종속성 중 하나를로드 할 수 없습니다. 위치가있는 어셈블리의 매니페스트 정의가 어셈블리와 일치하지 않습니다. 참조 : (HRESULT 예외 : 0x80131040) ":"System.Windows.Interactivity, Version = 4.0.0.0, Culture = 중립, PublicKeyToken = 31bf3856ad364e35 "} –

+0

참고로 추가해야합니다 – Ramankingdom

+0

@ReizTroyDurante 코드 참조를 추가했습니다 – Ramankingdom