public override void WriteJson(JsonWriter writer, object value, JsonSerializer serializer)
{
if (value != null && value is ComponentListener)
{
ComponentListener componentListener = (ComponentListener)value;
if (!componentListener.IsDefault)
{
if (this.Owner is StateManagedItem)
{
componentListener.Owner = ((StateManagedItem)this.Owner).Owner;
}
else if (this.Owner is Control)
{
componentListener.Owner = (Control)this.Owner;
}
componentListener.SetArgumentList(this.Owner.GetType().GetProperty(this.PropertyName));
writer.WriteRawValue(new ClientConfig().Serialize(componentListener));
return;
}
}
writer.WriteRawValue("{}");
}