protected override void Update(IEnumerable itemsSource, IDataContext context = null)
 {
     base.Update(itemsSource, context);
     if (itemsSource != null && !_isRestored && TabHost.GetBindingMemberValue(AttachedMembers.TabHost.RestoreSelectedIndex).GetValueOrDefault(true))
     {
         _isRestored = true;
         TryRestoreSelectedIndex();
     }
 }
Beispiel #2
0
        private static void TabHostSelectedItemChanged(TabHost tabHost, AttachedMemberChangedEventArgs <object> arg)
        {
            var generator = tabHost.GetBindingMemberValue(AttachedMembers.ViewGroup.ItemsSourceGenerator) as IItemsSourceGeneratorEx;

            if (generator != null)
            {
                generator.SelectedItem = arg.NewValue;
            }
        }
        private static void TabHostTemplateChanged <T>(TabHost tabHost, AttachedMemberChangedEventArgs <T> args)
        {
            var generator = tabHost.GetBindingMemberValue(AttachedMembers.ViewGroup.ItemsSourceGenerator);

            if (generator != null)
            {
                generator.Reset();
            }
        }
Beispiel #4
0
        private static void TabHostItemsSourceChanged(TabHost tabHost, AttachedMemberChangedEventArgs <IEnumerable> arg)
        {
            var generator = tabHost.GetBindingMemberValue(AttachedMembers.ViewGroup.ItemsSourceGenerator);

            if (generator == null)
            {
                generator = new TabHostItemsSourceGenerator(tabHost);
                tabHost.SetBindingMemberValue(AttachedMembers.ViewGroup.ItemsSourceGenerator, generator);
            }
            generator.SetItemsSource(arg.NewValue);
        }