protected override void OnWriteValue (object value)
{
if (CurrentMemberState.Value != null)
throw new XamlDuplicateMemberException (String.Format ("Member '{0}' is already written to current type '{1}'", CurrentMember, object_states.Peek ().Type));
StoreAppropriatelyTypedValue (value, null);
}