protected override void OnWriteGetObject ()
{
var state = object_states.Pop ();
var xm = CurrentMember;
var instance = xm.Invoker.GetValue (object_states.Peek ().Value);
if (instance == null)
throw new XamlObjectWriterException (String.Format ("The value for '{0}' property is null", xm.Name));
state.Value = instance;
state.IsInstantiated = true;
object_states.Push (state);
}