2017-11-18 6 views
0

私はこのようなコンボボックスました:私は何をする必要があるかitemsourceの外部にバインディングスタイルのプロパティがありますか?

<ComboBox x:Name="CountryMenuComboBox" 
     ItemsSource="{Binding Countries}"> 

     <ComboBox.ItemContainerStyle> 
      <Style> 
       <Setter Property="IsEnabled" Value="{Binding IsRemoving}" /> 
      </Style> 
     </ComboBox.ItemContainerStyle> 

プロパティIsRemovingを使用してコンボボックス内の項目を有効または無効であるが、このプロパティはitemsource Countriesの内側に配置されていないので、私をitemsourceの外にアクセスする必要があります。どのように私はスタイルのためにこれを行うことができますか?

+0

私たちがプロパティ*がどこにあるのかわからないのなら、その質問に答えることはできません。 'Countries'プロパティを所有する親ビューモデル上にありますか?もしそうなら、 'IsEnabled =" {バインドDataContext.IsRemoving、RelativeSource = {RelativeSource AncestorType =コンボボックス}} "' –

+0

@EdPlunkettはい申し訳ありませんが、国のプロパティは同じビューモデルにあります – pivutali

答えて

1

IsRemovingCountriesプロパティを所有する親ビューモデルのプロパティですか?もしそうなら、試してみてください<Setter Property=“IsEnabled” Value=“{Binding DataContext.IsRemoving, RelativeSource={RelativeSource AncestorType=ComboBox}}” />

+0

私は事を理解していません:IsEnabledセッターに置くべきですか?どこに? – pivutali

+0

今は同じ場所です。 RelativeSource部分を追加するだけです。 –

+0

なので、 ' pivutali

関連する問題