private IBindableApplicationBarItem CreateButtonItemFromTemplate(object item) { if (ButtonItemTemplate == null) { return(null); } var content = (IBindableApplicationBarItem)ButtonItemTemplate.LoadContent(); if (content == null) { throw new InvalidOperationException( "BindableApplicationBar cannot use the ButtonItemsSource property without a valid ButtonTemplate"); } content.DataContext = item; return(content); }
/// <summary> /// Loads the current module. /// </summary> protected override bool LoadInternal() { var template = new ButtonItemTemplate(); BindingServiceProvider .ResourceResolver .AddObject("buttonTemplate", new BindingResourceObject(template), true); //Registering attached property IBindingMemberProvider memberProvider = BindingServiceProvider.MemberProvider; memberProvider.Register(AttachedBindingMember.CreateAutoProperty <Label, string>("TextExt", TextExtMemberChanged, TextExtMemberAttached, TextExtGetDefaultValue)); memberProvider.Register(AttachedBindingMember.CreateMember <Label, string>("FormattedText", GetFormattedTextValue, SetFormattedTextValue, ObserveFormattedTextValue)); return(true); }