public PreferenceItemsSourceGenerator(PreferenceGroup preference) { Should.NotBeNull(preference, nameof(preference)); _preference = preference; _collectionViewManagerMember = BindingServiceProvider .MemberProvider .GetBindingMember(preference.GetType(), AttachedMembers.PreferenceGroup.CollectionViewManager, false, false); TryListenActivity(preference.Context); }
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 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); }
public ActionResult Update(string hash) { var id = ToolService.GetIdBHash(hash); if (!id.HasValue) { return(new HttpStatusCodeResult(HttpStatusCode.NotFound)); } var objNewsletter = Newsletter.Load(id.Value); if (objNewsletter == null) { return(new HttpStatusCodeResult(HttpStatusCode.NotFound)); } var goback = false; if (!objNewsletter.Ativo) { goback = true; objNewsletter.Ativo = true; objNewsletter.MotivoId = null; objNewsletter.Save(); } var model = new NewsletterUpdateViewModel { //Base Title = "Atualizar preferências de e-mail - Massa News", Description = "Atualize suas preferências e receba e-mails personalizados para você.", Robots = "noindex, nofollow", Canonical = $"{Constants.UrlWeb}/newsletter/atualizar", //Model UserHash = hash, GoBack = goback, PreferenceGroups = PreferenceGroup.GetAll(), UserNewsletter = objNewsletter }; ViewBag.ActiveNav = "Preferências de e-mail"; ViewBag.CityLetter = new SelectList(Cidade.GetAllToDictionary(), "Key", "Value", objNewsletter.CidadeId); return(View(model)); }