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);
            }
        }