У меня есть несколько плиток (TileLayoutControl Class) в моем XAML (показаны только 2 в этом примере), чья Видимость являются переплетены в булевых свойства и преобразуется через BooleanToVisibilityConverter.
Это работает отлично. Мой вопрос:Bind Видимости в ReactiveCommand CanExecute
Могу ли я привязать видимость к команде, чтобы я мог удалить необходимость этих нескольких логических свойств?
Нечто подобное связывание видимости с Command.CanExecute
Если да, то как я могу добиться этого? Любая помощь будет действительно оценена! Благодарю.
<dxlc:Tile Command="{Binding Tile1Command}"
Visibility="{Binding Path=IsTile1Visible , Converter={StaticResource BooleanToVisibilityConverter}}"/>
<dxlc:Tile Command="{Binding Tile2Command}"
Visibility="{Binding Path=IsTile2Visible , Converter={StaticResource BooleanToVisibilityConverter}}"/>
ViewModel
private bool _isTile1Visible;
public bool IsTile1Visible
{
get { return _isTile1Visible; }
set { this.RaiseAndSetIfChanged(ref _isTile1Visible, value); }
}
public ReactiveCommand Tile1Command { get; private set; }
Tile1Command = new ReactiveCommand();
Tile1Command.Subscribe(p => PerformTile1Operation());
Существует много более простые способы сделать это, см. мой ответ –
@PaulBetts Полезно знать - похоже, вы создали много интересных функций вокруг этих типов требований. –