protected override void Refresh() { var manager = GetCollectionViewManager(); for (int i = 0; i < _actionBar.TabCount; i++) { ActionBarTabTemplate.ClearTab(_actionBar, _actionBar.GetTabAt(i), true); } if (manager == null) { _actionBar.RemoveAllTabs(); } else { manager.Clear(_actionBar); } IEnumerable itemsSource = ItemsSource; if (itemsSource == null) { return; } #if APPCOMPAT var selectedItem = _actionBar.GetBindingMemberValue(AttachedMembersCompat.ActionBar.SelectedItem); #else var selectedItem = _actionBar.GetBindingMemberValue(AttachedMembers.ActionBar.SelectedItem); #endif int count = itemsSource.Count(); for (int index = 0; index < count; index++) { var item = GetItem(index); var tab = CreateTab(item); if (manager == null) { _actionBar.AddTab(tab, index, ReferenceEquals(selectedItem, item)); } else { manager.Insert(_actionBar, index, tab); } } if (count == 0) { OnEmptyTab(); } }