private void CommentCommandEditer_Loaded(object sender, RoutedEventArgs e) { _disposables = new CompositeDisposable(); new[] { AnonymousCommentToggleButton.ObserveDependencyProperty(ToggleSwitch.IsOnProperty), CommentSizePallete.ObserveDependencyProperty(ListView.SelectedItemProperty), AlingmentPallete.ObserveDependencyProperty(ListView.SelectedItemProperty), ColorPallete.ObserveDependencyProperty(ListView.SelectedItemProperty), UserInputCommand.ObserveDependencyProperty(TextBox.TextProperty), UserInputCommandToggleSwitch.ObserveDependencyProperty(ToggleSwitch.IsOnProperty), } .Merge() .Throttle(TimeSpan.FromSeconds(0.1)) .Subscribe(__ => { _ = _dispatcher.RunAsync(CoreDispatcherPriority.Normal, () => { CommandString = MakeCommandsString(); }); }) .AddTo(_disposables); AnonymousCommentToggleButton.IsOn = _viewModel.PlayerSettings.IsDefaultCommentWithAnonymous; CommandString = MakeCommandsString(); }