public GridControlCtaValue(GridControl control) : base(control) { var blenderCtrl = GridControlLeBlenderValue.Parse(control); if (blenderCtrl == null || blenderCtrl.Items == null) { return; } var item = blenderCtrl.Items.First(); Headline = item.GetRawValue("headline"); Text = item.GetRawValue("text"); Link = !string.IsNullOrEmpty(item.GetRawValue("link")) ? LinkPickerList.Parse(JObject.Parse(item.GetRawValue("link"))).Items.FirstOrDefault() : null; }
public override object ReadJson(JsonReader reader, Type objectType, object existingValue, JsonSerializer serializer) { // Skip if the reader is not at the start of an object if (reader.TokenType != JsonToken.StartObject) { return(null); } // Load JObject from stream JObject obj = JObject.Load(reader); switch (objectType.FullName) { case "Skybrud.LinkPicker.LinkPickerList": return(LinkPickerList.Parse(obj)); case "Skybrud.LinkPicker.LinkPickerItem": return(LinkPickerItem.Parse(obj)); default: return(null); } }