示例#1
0
        public CViewManagerBinder_New
        (
            PSAccessServiceInterface propStoreAccessService,
            IViewManagerProviderKey viewManagerProviderKey,
            CrudWithMappingCreator <TDal, TSource, TDestination> crudWithMappingCreator,
            CViewProviderCreator viewBuilder            // Method that can be used to create a IProvideAView from a DataSourceProvider.
        )
        {
            ViewManagerProviderKey = viewManagerProviderKey;

            //_propBagMapperCreator = propBagMapperCreator;
            _crudWithMappingCreator = crudWithMappingCreator;

            _viewBuilder = viewBuilder;

            // Create a instance of our nested, internal class that reponds to Updates to the property store Nodes.
            IReceivePropStoreNodeUpdates_PropBag <TDal> propStoreNodeUpdateReceiver = new PropStoreNodeUpdateReceiver(this);

            // Create a new watcher, the bindingInfo specifies the PropItem for which to listen to changes,
            // the propStoreNodeUpdateReceiver will be notfied when changes occur.
            _localWatcher = new LocalWatcher <TDal>(propStoreAccessService, ViewManagerProviderKey.BindingInfo, propStoreNodeUpdateReceiver);

            //var x = _propItemParent_wr;

            //var y = _propItemParent_wr.TryGetTarget(out IPropBag target);

            //var z = target;
        }
示例#2
0
 public IProvideACViewManager this[IViewManagerProviderKey viewManagerProviderKey]
 {
     get
     {
         IProvideACViewManager result = _dict[viewManagerProviderKey];
         return(result);
     }
 }
示例#3
0
 public bool TryGetValue(IViewManagerProviderKey viewManagerProviderKey, out IProvideACViewManager cViewManagerProvider)
 {
     if (_dict.TryGetValue(viewManagerProviderKey, out cViewManagerProvider))
     {
         return(true);
     }
     else
     {
         cViewManagerProvider = null;
         return(false);
     }
 }
示例#4
0
        public IProvideACViewManager GetOrAdd(IViewManagerProviderKey viewManagerProviderKey, Func <IViewManagerProviderKey, IProvideACViewManager> vFactory)
        {
            IProvideACViewManager result = _dict.GetOrAdd(viewManagerProviderKey, vFactory);

            return(result);
        }