private static void OnItemsSourceChanged(BindableObject bindable, object oldValue, object newValue) { BoundPicker boundPicker = (BoundPicker)bindable; //boundPicker.BatchBegin (); try { boundPicker.Items.Clear(); var enumerable = newValue as IEnumerable; if (enumerable != null && enumerable.GetEnumerator().MoveNext()) { foreach (var item in enumerable) { boundPicker.Items.Add(item.ToString()); } } else { boundPicker.Items.Add(" "); } boundPicker.InternalUpdateSelectedIndex(); } finally { //boundPicker.BatchCommit (); } }
private static void OnSelectedItemChanged(BindableObject bindable, object oldValue, object newValue) { BoundPicker boundPicker = (BoundPicker)bindable; if (boundPicker.ItemSelected != null) { boundPicker.ItemSelected(boundPicker, new SelectedItemChangedEventArgs(newValue)); } boundPicker.InternalUpdateSelectedIndex(); }