using System; using System.Collections.ObjectModel; using ReactiveUI; namespace BindingTest.ViewModels { public class MainWindowViewModel : ReactiveObject { private string _simpleBinding = "Simple Binding"; public MainWindowViewModel() { Items = new ObservableCollection { new TestItem { StringValue = "Foo" }, new TestItem { StringValue = "Bar" }, new TestItem { StringValue = "Baz" }, }; ShuffleItems = ReactiveCommand.Create(); ShuffleItems.Subscribe(_ => { var r = new Random(); Items[r.Next(Items.Count)] = Items[r.Next(Items.Count)]; }); } public ObservableCollection Items { get; } public ReactiveCommand ShuffleItems { get; } public string SimpleBinding { get { return _simpleBinding; } set { this.RaiseAndSetIfChanged(ref _simpleBinding, value); } } } }