public override void ViewDidLoad() { base.ViewDidLoad(); Source = new TableViewSource(TableView); TableView.Source = Source; var weakThis = new WeakReference <BrowserViewController>(this); ViewModel.Items.Subscribe(i => weakThis.Use(t => t.Source.DataSoruce = i)); Observable.FromEventPattern <ItemSelectedEventArgs>(Source, nameof(Source.ItemSelected)) .Select(v => v.EventArgs.Item) .SetCommand(ViewModel.NavigateToDetail); Observable.FromEventPattern(AddNewBarButton, nameof(AddNewBarButton.Clicked)) .SetCommand(ViewModel.NavigateToNew); }