protected override void OnReferenceInitializing() { base.OnReferenceInitializing(); if (_implementation == null) // may have been set by ctor { _implementation = BindableDomainObjectImplementation.Create(this); } }
public static BindableDomainObjectImplementation Create(BindableDomainObject wrapper) { ArgumentUtility.CheckNotNull("wrapper", wrapper); Assertion.DebugAssert(!TypeExtensions.CanAscribeTo(typeof(BindableDomainObjectImplementation), typeof(Mixin <,>)), "we assume the mixin does not have a base object"); var impl = new BindableDomainObjectImplementation(wrapper); ((IInitializableMixin)impl).Initialize(wrapper, null, false); return(impl); }