private static void ToolbarIsActionBarChanged(Toolbar toolbar, AttachedMemberChangedEventArgs <bool> args) { if (args.NewValue) { (toolbar.Context.GetActivity() as AppCompatActivity)?.SetSupportActionBar(toolbar); } }
private static void ToolbarIsActionBarChanged(Toolbar view, AttachedMemberChangedEventArgs <bool> args) { if (args.NewValue) { view.Context.GetActivity()?.SetActionBar(view); } }
private static void BusyMessageChanged(UIView uiView, AttachedMemberChangedEventArgs <object> args) { //Ignoring view and set overlay over main window uiView = UIApplication.SharedApplication.Windows[0]; LoadingOverlay busyIndicator = BusyViewMember.GetValue(uiView, null); busyIndicator.BusyMessage = args.NewValue == null ? null : args.NewValue.ToString(); }
private static void ActionBarSelectedItemChanged(ActionBar actionBar, AttachedMemberChangedEventArgs <object> args) { switch (actionBar.GetNavigationMode()) { case ActionBarNavigationMode.List: #if APPCOMPAT var adapter = actionBar.GetBindingMemberValue(AttachedMembersCompat.ActionBar.ItemsSourceAdapter); #else var adapter = actionBar.GetBindingMemberValue(AttachedMembers.ActionBar.ItemsSourceAdapter); #endif if (adapter == null || adapter.ItemsSource == null) { return; } if (args.NewValue == null) { args.Member.SetSingleValue(actionBar, adapter.GetRawItem(actionBar.SelectedNavigationIndex)); } else { actionBar.SetSelectedNavigationItem(adapter.GetPosition(args.NewValue)); } break; case ActionBarNavigationMode.Tabs: #if APPCOMPAT var tabGenerator = actionBar.GetBindingMemberValue(AttachedMembersCompat.ActionBar.ItemsSourceGenerator) as IItemsSourceGeneratorEx; #else var tabGenerator = actionBar.GetBindingMemberValue(AttachedMembers.ActionBar.ItemsSourceGenerator) as IItemsSourceGeneratorEx; #endif if (tabGenerator == null) { var tabValue = args.NewValue as ActionBar.Tab; if (tabValue != null && tabValue.Position != actionBar.SelectedNavigationIndex) { tabValue.Select(); } } else { if (args.NewValue == null) { object ctx = actionBar.SelectedNavigationIndex < 0 ? null : actionBar.SelectedTab; if (ctx != null) { ctx = ctx.DataContext(); } args.Member.SetSingleValue(actionBar, ctx); } else { tabGenerator.SelectedItem = args.NewValue; } } break; } }
/// <summary> /// Called every time when value changed. /// </summary> private static void TextExtMemberChanged(TextView textBlock, AttachedMemberChangedEventArgs <string> args) { ServiceProvider .IocContainer .Get <IToastPresenter>() .ShowAsync(string.Format("Invoking TextExtMemberChanged on {2} old value {0} new value {1}", args.OldValue, args.NewValue, textBlock.Id), ToastDuration.Short); textBlock.Text = string.Format("Old value \"{0}\" new value \"{1}\"", args.OldValue, args.NewValue); }
private static void ToolbarMenuTemplateChanged(Toolbar toolbar, AttachedMemberChangedEventArgs <int> args) { Activity activity = toolbar.Context.GetActivity(); if (activity != null) { activity.MenuInflater.Inflate(args.NewValue, toolbar.Menu, toolbar); } }
private static void AdapterViewSelectedItemChanged(AdapterView sender, AttachedMemberChangedEventArgs <object> args) { var adapter = GetAdapter(sender) as IItemsSourceAdapter; if (adapter != null) { sender.SetBindingMemberValue(AttachedMembers.AdapterView.SelectedItemPosition, adapter.GetPosition(args.NewValue)); } }
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(); } }
private static void TabHostSelectedItemChanged(TabHost tabHost, AttachedMemberChangedEventArgs <object> arg) { var generator = ItemsSourceGeneratorBase.Get(tabHost) as TabHostItemsSourceGenerator; if (generator != null) { generator.SetSelectedItem(arg.NewValue); } }
private static void TabHostTemplateChanged <T>(TabHost tabHost, AttachedMemberChangedEventArgs <T> args) { var generator = ItemsSourceGeneratorBase.Get(tabHost); if (generator != null) { generator.Reset(); } }
private static void ToolbarMenuTemplateChanged(Toolbar view, AttachedMemberChangedEventArgs <int> args) { var activity = view.Context.GetActivity(); if (activity != null) { activity.MenuInflater.Inflate(args.NewValue, view.Menu, view); } }
private static void OnImageUrlChanged(PictureBox pictureBox, AttachedMemberChangedEventArgs <string> args) { if (string.IsNullOrEmpty(args.NewValue)) { return; } //for example you can use any cache library to load image pictureBox.ImageLocation = args.NewValue; }
/// <summary> /// Called every time when value changed. /// </summary> private static void TextExtMemberChanged(TextView textBlock, AttachedMemberChangedEventArgs<string> args) { ServiceProvider .IocContainer .Get<IToastPresenter>() .ShowAsync(string.Format("Invoking TextExtMemberChanged on {2} old value {0} new value {1}", args.OldValue, args.NewValue, textBlock.Id), ToastDuration.Short); textBlock.Text = string.Format("Old value \"{0}\" new value \"{1}\"", args.OldValue, args.NewValue); }
private static void MenuItemsSourceChanged(IMenu menu, AttachedMemberChangedEventArgs <IEnumerable> args) { var generator = menu.GetBindingMemberValue(AttachedMembers.Menu.ItemsSourceGenerator); if (generator != null) { generator.SetItemsSource(args.NewValue); } }
private static void OnImageUrlChanged(Image image, AttachedMemberChangedEventArgs <string> args) { if (string.IsNullOrEmpty(args.NewValue)) { return; } //for example you can use any cache library to load image image.Source = ImageSource.FromUri(new Uri(args.NewValue)); }
private static void MenuItemsSourceChanged(IMenu menu, AttachedMemberChangedEventArgs <IEnumerable> args) { var generator = ItemsSourceGeneratorBase.Get(menu); if (generator != null) { generator.SetItemsSource(args.NewValue); } }
private static void PreferenceGroupItemsSourceChanged(PreferenceGroup preference, AttachedMemberChangedEventArgs<IEnumerable> args) { var sourceGenerator = preference.GetBindingMemberValue(AttachedMembers.PreferenceGroup.ItemsSourceGenerator); if (sourceGenerator == null) { sourceGenerator = new PreferenceItemsSourceGenerator(preference); preference.SetBindingMemberValue(AttachedMembers.PreferenceGroup.ItemsSourceGenerator, sourceGenerator); } sourceGenerator.SetItemsSource(args.NewValue); }
private static void RecyclerViewItemsSourceChanged(global::Android.Support.V7.Widget.RecyclerView recyclerView, AttachedMemberChangedEventArgs<IEnumerable> args) { var adapter = recyclerView.GetAdapter() as ItemsSourceRecyclerAdapter; if (adapter == null) { adapter = new ItemsSourceRecyclerAdapter(); recyclerView.SetAdapter(adapter); } adapter.ItemsSource = args.NewValue; }
private static void BusyMessageChanged(View view, AttachedMemberChangedEventArgs<string> args) { var dialog = ProgressDialogAttachedProperty.GetValue(view, null); if (dialog == null) { dialog = new ProgressDialog(view.Context); ProgressDialogAttachedProperty.SetValue(view, dialog); } dialog.SetMessage(args.NewValue); }
/// <summary> /// Called every time when value changed. /// </summary> private static void TextExtMemberChanged(UILabel textBlock, AttachedMemberChangedEventArgs<string> args) { if (!ServiceProvider.DesignTimeManager.IsDesignMode) ServiceProvider .IocContainer .Get<IToastPresenter>() .ShowAsync(string.Format("Invoking TextExtMemberChanged on {2} old value {0} new value {1}", args.OldValue, args.NewValue, textBlock.AccessibilityLabel), ToastDuration.Short); textBlock.Text = string.Format("Old value \"{0}\" new value \"{1}\"", args.OldValue, args.NewValue); }
private static void IsBusyChanged(UIView uiView, AttachedMemberChangedEventArgs<bool> args) { //Ignoring view and set overlay over main window uiView = UIApplication.SharedApplication.Windows[0]; LoadingOverlay busyIndicator = BusyViewMember.GetValue(uiView, null); if (args.NewValue) busyIndicator.Show(uiView); else busyIndicator.Hide(); }
private static void BusyMessageChanged(View view, AttachedMemberChangedEventArgs <string> args) { var dialog = ProgressDialogAttachedProperty.GetValue(view, null); if (dialog == null) { dialog = new ProgressDialog(view.Context); ProgressDialogAttachedProperty.SetValue(view, dialog); } dialog.SetMessage(args.NewValue); }
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); }
private static void TabLayoutItemsSourceChanged(TabLayout view, AttachedMemberChangedEventArgs <IEnumerable> args) { var generator = view.GetBindingMemberValue(AttachedMembers.ViewGroup.ItemsSourceGenerator); if (generator == null) { generator = new TabLayoutItemsSourceGenerator(view); view.SetBindingMemberValue(AttachedMembers.ViewGroup.ItemsSourceGenerator, generator); } generator.SetItemsSource(args.NewValue); }
private static void ObjectItemsSourceChanged(object control, AttachedMemberChangedEventArgs <IEnumerable> args) { var generator = control.GetBindingMemberValue(ItemsSourceGeneratorBase.MemberDescriptor); if (generator == null) { generator = new ItemsSourceGenerator(control); control.SetBindingMemberValue(ItemsSourceGeneratorBase.MemberDescriptor, generator); } generator.SetItemsSource(args.NewValue); }
private static void AdapterViewSelectedItemChanged(AdapterView sender, AttachedMemberChangedEventArgs <object> args) { var adapter = GetAdapter(sender) as ItemsSourceAdapter; if (adapter == null) { return; } int position = adapter.GetPosition(args.NewValue); AdapterViewSelectedPositionMember.SetValue(sender, position); }
/// <summary> /// Called every time when value changed. /// </summary> private static void TextExtMemberChanged(UILabel textBlock, AttachedMemberChangedEventArgs <string> args) { if (!ServiceProvider.DesignTimeManager.IsDesignMode) { ServiceProvider .IocContainer .Get <IToastPresenter>() .ShowAsync(string.Format("Invoking TextExtMemberChanged on {2} old value {0} new value {1}", args.OldValue, args.NewValue, textBlock.AccessibilityLabel), ToastDuration.Short); } textBlock.Text = string.Format("Old value \"{0}\" new value \"{1}\"", args.OldValue, args.NewValue); }
private static void ViewPagerSelectedItemChanged(ViewPager sender, AttachedMemberChangedEventArgs <object> args) { var adapter = sender.Adapter as ItemsSourcePagerAdapter; if (adapter == null) { return; } int position = adapter.GetPosition(args.NewValue); sender.SetBindingMemberValue(AttachedMembersCompat.ViewPager.CurrentItem, position); }
private static void OnImageUrlChanged(Image image, AttachedMemberChangedEventArgs <string> args) { if (string.IsNullOrEmpty(args.NewValue)) { return; } //for example you can use any cache library to load image #if NETFX_CORE image.Source = new BitmapImage(new Uri(args.NewValue)); #else image.Source = BitmapFrame.Create(new Uri(args.NewValue)); #endif }
private static void ToolbarIsActionBarChanged(Toolbar toolbar, AttachedMemberChangedEventArgs <bool> args) { if (!args.NewValue) { return; } var activity = toolbar.Context.GetActivity() as AppCompatActivity; if (activity != null) { activity.SetSupportActionBar(toolbar); } }
private static void ViewPagerCurrentItemChanged(ViewPager sender, AttachedMemberChangedEventArgs <int> args) { sender.CurrentItem = args.NewValue; var adapter = sender.Adapter as ItemsSourcePagerAdapter; if (adapter == null) { return; } object item = adapter.GetRawItem(sender.CurrentItem); sender.SetBindingMemberValue(AttachedMembersCompat.ViewPager.SelectedItem, item); }
private static void ViewGroupTemplateChanged <T>(ViewGroup sender, AttachedMemberChangedEventArgs <T> args) { var container = sender as AdapterView; if (container == null) { sender.GetBindingMemberValue(AttachedMembers.ViewGroup.ItemsSourceGenerator)?.Reset(); } else { (GetAdapter(container) as BaseAdapter)?.NotifyDataSetChanged(); } }
private static void TableViewItemsSourceChanged(UITableView uiTableView, AttachedMemberChangedEventArgs <IEnumerable> args) { if (uiTableView.Source == null) { uiTableView.Source = TouchToolkitExtensions.TableViewSourceFactory(uiTableView, DataContext.Empty); } var tableViewSource = uiTableView.Source as ItemsSourceTableViewSource; if (tableViewSource != null) { tableViewSource.ItemsSource = args.NewValue; } }
private static void ToolbarIsActionBarChanged(Toolbar view, AttachedMemberChangedEventArgs <bool> args) { if (!args.NewValue) { return; } var activity = view.Context.GetActivity(); if (activity != null) { activity.SetActionBar(view); } }
private static void PopupMenuEventChanged(View view, AttachedMemberChangedEventArgs <string> args) { if (string.IsNullOrEmpty(args.NewValue)) { return; } IBindingMemberInfo member = BindingServiceProvider .MemberProvider .GetBindingMember(view.GetType(), args.NewValue, false, true); var presenter = ServiceProvider.AttachedValueProvider.GetOrAdd(view, "!@popup", (view1, o) => new PopupMenuPresenter(view1), null); var unsubscriber = member.SetSingleValue(view, presenter) as IDisposable; presenter.Update(unsubscriber); }
private static void IsBusyChanged(View view, AttachedMemberChangedEventArgs<bool> args) { var dialog = ProgressDialogAttachedProperty.GetValue(view, null); if (dialog == null) { dialog = new ProgressDialog(view.Context); dialog.SetCancelable(false); ProgressDialogAttachedProperty.SetValue(view, dialog); } if (args.NewValue) dialog.Show(); else dialog.Dismiss(); }
private static void IsBusyChanged(Control control, AttachedMemberChangedEventArgs<bool> args) { BusyIndicator busyIndicator = BusyViewMember.GetValue(control, null); if (args.NewValue) { for (int index = 0; index < control.Controls.Count; index++) control.Controls[index].Enabled = false; control.Controls.Add(busyIndicator); busyIndicator.Left = (control.ClientSize.Width - busyIndicator.Width) / 2; busyIndicator.Top = (control.ClientSize.Height - busyIndicator.Height) / 2; busyIndicator.BringToFront(); } else { control.Controls.Remove(busyIndicator); for (int index = 0; index < control.Controls.Count; index++) control.Controls[index].Enabled = true; } }
private static void ObjectItemsSourceChanged(object control, AttachedMemberChangedEventArgs<IEnumerable> args) { var generator = control.GetBindingMemberValue(ItemsSourceGeneratorBase.MemberDescriptor); if (generator == null) { generator = new ItemsSourceGenerator(control); control.SetBindingMemberValue(ItemsSourceGeneratorBase.MemberDescriptor, generator); } generator.SetItemsSource(args.NewValue); }
private static void ToolbarItemsSourceChanged(UIViewController viewController, AttachedMemberChangedEventArgs<IEnumerable> args) { GetOrAddToolBarItemsSourceGenerator(viewController).SetItemsSource(args.NewValue); }
private static void TabBarItemsSourceChanged(UITabBarController tabBar, AttachedMemberChangedEventArgs<IEnumerable> args) { GetOrAddTabBarItemsSourceGenerator(tabBar).SetItemsSource(args.NewValue); }
private static void ViewPagerSelectedItemChanged(ViewPager sender, AttachedMemberChangedEventArgs<object> args) { var adapter = sender.Adapter as ItemsSourcePagerAdapter; if (adapter == null) return; int position = adapter.GetPosition(args.NewValue); sender.SetBindingMemberValue(AttachedMembersCompat.ViewPager.CurrentItem, position); }
private static void TabBarSelectedItemChanged(UITabBarController bar, AttachedMemberChangedEventArgs<object> args) { if (args.NewValue == null) { bar.SelectedIndex = -1; return; } var controllers = bar.ViewControllers; if (controllers == null) return; for (int index = 0; index < controllers.Length; index++) { var controller = controllers[index]; if (controller.DataContext() == args.NewValue) { bar.SelectedViewController = controller; return; } } }
private static void ContentChanged(Control control, AttachedMemberChangedEventArgs<object> args) { UpdateContent(control, args.NewValue, control.GetBindingMemberValue(AttachedMembers.Control.ContentTemplateSelector)); }
private static void BusyMessageChanged(Control control, AttachedMemberChangedEventArgs<object> args) { BusyIndicator busyIndicator = BusyViewMember.GetValue(control, null); busyIndicator.BusyMessage = args.NewValue; }
private static void TabLayoutItemsSourceChanged(TabLayout view, AttachedMemberChangedEventArgs<IEnumerable> args) { var generator = view.GetBindingMemberValue(AttachedMembers.ViewGroup.ItemsSourceGenerator); if (generator == null) { generator = new TabLayoutItemsSourceGenerator(view); view.SetBindingMemberValue(AttachedMembers.ViewGroup.ItemsSourceGenerator, generator); } generator.SetItemsSource(args.NewValue); }
private static void NavigationViewMenuTemplateChanged(NavigationView view, AttachedMemberChangedEventArgs<int> args) { Activity activity = view.Context.GetActivity(); if (activity != null) activity.MenuInflater.Inflate(args.NewValue, view.Menu, view); }
private static void TableViewItemsSourceChanged(UITableView uiTableView, AttachedMemberChangedEventArgs<IEnumerable> args) { if (uiTableView.Source == null) uiTableView.Source = TableViewSourceBase.Factory(uiTableView, DataContext.Empty); var tableViewSource = uiTableView.Source as ItemsSourceTableViewSource; if (tableViewSource != null) tableViewSource.ItemsSource = args.NewValue; }
private static void MenuItemsSourceChanged(IMenu menu, AttachedMemberChangedEventArgs<IEnumerable> args) { var generator = menu.GetBindingMemberValue(AttachedMembers.Menu.ItemsSourceGenerator); if (generator != null) generator.SetItemsSource(args.NewValue); }
private static void ViewDrawerIsOpenedChanged(View view, AttachedMemberChangedEventArgs<bool> args) { DrawerLayout drawer = FindDrawer(view); if (drawer == null) return; if (args.NewValue) drawer.OpenDrawer(view); else drawer.CloseDrawer(view); }
private static void ToolbarIsActionBarChanged(Toolbar toolbar, AttachedMemberChangedEventArgs<bool> args) { if (!args.NewValue) return; var activity = toolbar.Context.GetActivity() as AppCompatActivity; if (activity != null) activity.SetSupportActionBar(toolbar); }
private static void ToolbarMenuTemplateChanged(Toolbar toolbar, AttachedMemberChangedEventArgs<int> args) { Activity activity = toolbar.Context.GetActivity(); if (activity != null) activity.MenuInflater.Inflate(args.NewValue, toolbar.Menu, toolbar); }
private static void ContentChanged(UIView container, AttachedMemberChangedEventArgs<object> args) { UpdateContent(container, args.NewValue, container.GetBindingMemberValue(AttachedMembers.UIView.ContentTemplateSelector)); }
private static void NavigationViewMenuTemplateChanged(NavigationView view, AttachedMemberChangedEventArgs<int> args) { Activity activity = view.Context.GetActivity(); if (activity != null) { activity.MenuInflater.Inflate(args.NewValue, view.Menu, view); //http://stackoverflow.com/questions/30695038/how-to-programmatically-add-a-submenu-item-to-the-new-material-design-android-su/30706233#30706233 var menu = view.Menu; var size = menu.Size(); if (size > 0) { var item = menu.GetItem(size - 1); item.SetTitle(item.TitleFormatted); } } }
private static void CollectionViewItemsSourceChanged(UICollectionView collectionView, AttachedMemberChangedEventArgs<IEnumerable> args) { if (collectionView.Source == null) collectionView.Source = CollectionViewSourceBase.Factory(collectionView, DataContext.Empty); var source = collectionView.Source as ItemsSourceCollectionViewSource; if (source != null) source.ItemsSource = args.NewValue; }
private static void PickerViewItemsSourceChanged(UIPickerView pickerView, AttachedMemberChangedEventArgs<IEnumerable> args) { GetOrAddPickerViewModel(pickerView).ItemsSource = args.NewValue; }
private static void SplitViewControllerItemsSourceChanged(UISplitViewController viewController, AttachedMemberChangedEventArgs<IEnumerable> args) { var itemsSource = (IItemsSourceGenerator)ServiceProvider .AttachedValueProvider .GetOrAdd(viewController, "@!spliitems", (controller, o) => new ArrayItemsSourceGenerator<UISplitViewController, UIViewController>(controller, AttachedMemberConstants.ItemTemplate, (splitViewController, controllers) => splitViewController.ViewControllers = controllers), null); itemsSource.SetItemsSource(args.NewValue); }
private static void PickerViewDisplayMemberPathChangedChanged(UIPickerView pickerView, AttachedMemberChangedEventArgs<string> args) { GetOrAddPickerViewModel(pickerView).DisplayMemberPath = args.NewValue; }
private static void BusyMessageChanged(UIView uiView, AttachedMemberChangedEventArgs<object> args) { //Ignoring view and set overlay over main window uiView = UIApplication.SharedApplication.Windows[0]; LoadingOverlay busyIndicator = BusyViewMember.GetValue(uiView, null); busyIndicator.BusyMessage = args.NewValue == null ? null : args.NewValue.ToString(); }
private static void ViewPagerCurrentItemChanged(ViewPager sender, AttachedMemberChangedEventArgs<int> args) { sender.CurrentItem = args.NewValue; var adapter = sender.Adapter as ItemsSourcePagerAdapter; if (adapter == null) return; object item = adapter.GetRawItem(sender.CurrentItem); sender.SetBindingMemberValue(AttachedMembersCompat.ViewPager.SelectedItem, item); }