Visbility
の選択した値にExpander
基づいてを設定したいと思いComboBox
ます。ComboBox
からのオブジェクトにすでにマッピングされていますModel
:
<ComboBox Name="SelectedCar" ItemsSource="{Binding Path=CarCategories}" SelectedValue="{Binding Path=Car.CarCategory, Mode=TwoWay}"/>
Visbility
この方法で派生する VM にプロパティを設定しました。
private Visibility _extraCarDetailsVisibility;
public Visibility ExtraCarDetailsVisibility
{
get
{
if (ManagedPortfolioSelected != null)
{
var category = Car.CarCategory.ToLower();
if (category == "porsche")
{
_extraCarDetailsVisibility= Visibility.Visible;
}
}
_extraCarDetailsVisibility= Visibility.Collapsed;
return _extraCarDetailsVisibility;
}
set
{
_extraCarDetailsVisibility= value;
NotifyPropertyChanged("ExtraCarDetailsVisibility");
}
}
そして、これが私がそれを使用する方法です:
<Expander Visibility="{Binding Path=ExtraCarDetailsVisibility}">
ただし、CarCategories
変更イベントがサブスクライブされていないと思うため(モデルからのものであるため、実際にはできないようです) ExtraCarDetailsVisibility
、車のカテゴリを変更してもプロパティが呼び出されないため、これは機能しません...
これをどのように行いますか?ありがとうございました!