protected override void SaveCustomPersonalizationState(PersonalizationDictionary state) { object[] parts = new object[6 * base.WebParts.Count]; int count = 0; foreach (WebPart webPart in base.WebParts) { parts[count++] = webPart.ID; parts[count++] = webPart.Title; parts[count++] = SerializationServices.ShortAssemblyQualifiedName(webPart.GetType().AssemblyQualifiedName); if (null != webPart.Zone) { parts[count++] = webPart.Zone.ID; } else { parts[count++] = null; } parts[count++] = (webPart is IContainerWebPart); parts[count++] = (webPart is IProxyWebPart); } if (!state.Contains("lwas.info")) { state.Add("lwas.info", new PersonalizationEntry(parts, base.Personalization.Scope)); } else { state["lwas.info"] = new PersonalizationEntry(parts, base.Personalization.Scope); } base.SaveCustomPersonalizationState(state); }
public new void Load(PersonalizationDictionary state) { if (state.Contains("Script")) { _script = state["Script"].Value as String; } }
public void FillPersonalizationDictionary(Control control, ICollection propertyInfos, PersonalizationDictionary personalizations) { foreach (PropertyInfo propertyInfo in propertyInfos) { PersonalizableAttribute attribute = (PersonalizableAttribute)Attribute.GetCustomAttribute(propertyInfo, typeof(PersonalizableAttribute)); PersonalizationEntry entry = new PersonalizationEntry(ReflectionServices.ExtractValue(control, propertyInfo.Name), attribute.Scope, attribute.IsSensitive); if (!personalizations.Contains(propertyInfo.Name)) { personalizations.Add(propertyInfo.Name, entry); } else { personalizations[propertyInfo.Name] = entry; } } }