あなたは正しいです。選択したリスト ボックス項目を保持するビューモデル変数を作成します。テキストブロックの可視性を保持する別の変数も作成します。次に、ビューモデルからテキスト ブロックの可視性を設定できます。
private string _selectedListBoxItem;
private boolean _textBlockVisibility
public string SelectedListBoxItem
{
get {return _selectedListBoxItem;}
set{_selectedListBoxItem=value;
_textBlockVisibility=false;}
}
public Boolean TextBlockVisibilty
{
get{return _textBlockVisibility;};
set {_textBlockVisibility=value;};
}
xaml は、テキスト ブロックの可視性を TextBlockVisibility にバインドします。可視性コンバーターを使用する必要があります。何かのようなもの:
public class BooleanVisibilityValueConverter : IValueConverter
{
public object Convert(object value, Type targetType, object parameter, CultureInfo culture)
{
if (value != null)
{
if (((bool)value) == true)
return Visibility.Visible;
else
return Visibility.Collapsed;
}
return Visibility.Collapsed;
}
public object ConvertBack(object value, Type targetType, object parameter, CultureInfo culture)
{
throw new Exception("The method or operation is not implemented.");
}
}