private object OnCreateService(IServiceContainer container, Type serviceType)
 {
     if (!(serviceType == typeof(IImplicitResourceProvider)))
     {
         return(null);
     }
     if (this._implicitResourceProvider == null)
     {
         IResourceProvider provider = ControlDesigner.GetDesignTimeResourceProviderFactory(this.Component.Site).CreateDesignTimeLocalResourceProvider(this.Component.Site);
         this._implicitResourceProvider = provider as IImplicitResourceProvider;
         if (this._implicitResourceProvider == null)
         {
             this._implicitResourceProvider = new ImplicitResourceProvider(this);
         }
     }
     return(this._implicitResourceProvider);
 }
示例#2
0
    internal IImplicitResourceProvider GetImplicitResourceProvider() {

        // 
        if (FInDesigner)
            return null;

        // If we already attempted to get them, return whatever we got
        if (flags[attemptedImplicitResources])
            return _implicitResourceProvider;

        flags[attemptedImplicitResources] = true;

        IResourceProvider resourceProvider = ResourceExpressionBuilder.GetLocalResourceProvider(_rootBuilder.VirtualPath);
        if (resourceProvider == null)
            return null;

        // If the resource provider is also an IImplicitResourceProvider, use that
        _implicitResourceProvider = resourceProvider as IImplicitResourceProvider;

        // Otherwise, use the default IImplicitResourceProvider implementation
        if (_implicitResourceProvider == null)
            _implicitResourceProvider = new DefaultImplicitResourceProvider(resourceProvider);

        return _implicitResourceProvider;
    }
 private object OnCreateService(IServiceContainer container, Type serviceType)
 {
     if (!(serviceType == typeof(IImplicitResourceProvider)))
     {
         return null;
     }
     if (this._implicitResourceProvider == null)
     {
         IResourceProvider provider = ControlDesigner.GetDesignTimeResourceProviderFactory(this.Component.Site).CreateDesignTimeLocalResourceProvider(this.Component.Site);
         this._implicitResourceProvider = provider as IImplicitResourceProvider;
         if (this._implicitResourceProvider == null)
         {
             this._implicitResourceProvider = new ImplicitResourceProvider(this);
         }
     }
     return this._implicitResourceProvider;
 }