private void Initialize()
        {
            var observedProperties = ObservableProperty.GetObservedProperties();
            var observedArrays     = ObservableProperty.GetObservedCollections();

            foreach (var observedProperty in observedProperties)
            {
                dynamicProxies[observedProperty.Key] = CreatePropertyObservable(observedProperty.Value);
            }

            foreach (var observedArray in observedArrays)
            {
                collectionProxies[observedArray.Key] = CreateCollectionObservable(observedArray.Value);
            }
        }
        private void Initialize()
        {
            var observedProperties  = ObservableProperty.GetObservedProperties();
            var observedCollections = ObservableProperty.GetObservedCollections();

            foreach (var observedProperty in observedProperties)
            {
                IObservableProperty observableProperty = observedProperty.Value;
                runtimeProxies[observedProperty.Key] = (IRuntimeProxy)RuntimeProxyManagerHelper.CreateRuntimeManager(observableProperty, null, IsReadOnly).Implementation;
            }

            foreach (var observedCollection in observedCollections)
            {
                collectionProxies[observedCollection.Key] = CollectionProxy.Create(
                    observedCollection.Value,
                    proxyWrapper,
                    proxyFactory,
                    observableFactory);
            }
        }