protected override void OnElementChanged(ElementChangedEventArgs <NativeListView> e) { base.OnElementChanged(e); if (Control == null) { var scroller = new NSScrollView { AutoresizingMask = NSViewResizingMask.HeightSizable | NSViewResizingMask.WidthSizable, DocumentView = table = new NSTableView().AsListViewLook() }; table.RowHeight = 60; SetNativeControl(scroller); } if (e.OldElement != null) { // unsubscribe } if (e.NewElement != null) { // subscribe var s = new NativeListViewSource(e.NewElement, table); table.Source = s; } }
protected override void OnElementPropertyChanged(object sender, System.ComponentModel.PropertyChangedEventArgs e) { base.OnElementPropertyChanged(sender, e); if (e.PropertyName == NativeListView.ItemsProperty.PropertyName) { // update the Items list in the UITableViewSource var s = new NativeListViewSource(Element, table); table.Source = s; } }