Exportar (0) Imprimir
Expandir todo
Este artículo proviene de un motor de traducción automática. Mueva el puntero sobre las frases del artículo para ver el texto original. Más información.
Traducción
Original

LocalizationExtenderProvider (Clase)

Nota: esta API ya está obsoleta. La alternativa no obsoleta es CodeDomLocalizationProvider.

Proporciona a un diseñador raíz compatibilidad en tiempo de diseño para las características de localización.

System.Object
  System.ComponentModel.Design.LocalizationExtenderProvider

Espacio de nombres:  System.ComponentModel.Design
Ensamblado:  System.Design (en System.Design.dll)

[ObsoleteAttribute("This class has been deprecated. Use CodeDomLocalizationProvider instead.  http://go.microsoft.com/fwlink/?linkid=14202")]
public class LocalizationExtenderProvider : IExtenderProvider, 
	IDisposable

El tipo LocalizationExtenderProvider expone los siguientes miembros.

  NombreDescripción
Método públicoLocalizationExtenderProviderInicializa una nueva instancia de la clase LocalizationExtenderProvider mediante el proveedor de servicios principal especificado y el componente base.
Arriba

  NombreDescripción
Método públicoCanExtendIndica si este objeto puede proporcionar las propiedades extensoras al objeto especificado.
Método públicoDispose()Se deshace de los recursos (distintos de la memoria) utilizados por LocalizationExtenderProvider.
Método protegidoDispose(Boolean)Libera los recursos no administrados que utiliza LocalizationExtenderProvider y libera los recursos administrados de forma opcional.
Método públicoEquals(Object)Determina si el objeto especificado es igual al objeto actual. (Se hereda de Object).
Método protegidoFinalize Permite que un objeto intente liberar recursos y realizar otras operaciones de limpieza antes de ser reclamado por la recolección de elementos no utilizados. (Se hereda de Object).
Método públicoGetHashCode Sirve como una función hash para un tipo en particular. (Se hereda de Object).
Método públicoGetLanguageObtiene la referencia cultural de recursos actual para el objeto especificado.
Método públicoGetLoadLanguageObtiene la referencia cultural de recursos predeterminada al inicializar los valores de un objeto localizado en tiempo de diseño.
Método públicoGetLocalizableObtiene un valor que indica si el objeto especificado admite la localización de recursos.
Método públicoGetType Obtiene el Type de la instancia actual. (Se hereda de Object).
Método protegidoMemberwiseClone Crea una copia superficial del Object actual. (Se hereda de Object).
Método públicoResetLanguageRestablece la referencia cultural de recursos para el objeto especificado.
Método públicoSetLanguageEstablece que la referencia cultural de recursos actual para el objeto especificado sea la referencia cultural de recursos especificada.
Método públicoSetLocalizableEstablece un valor que indica si el objeto especificado admite recursos localizados.
Método públicoShouldSerializeLanguageObtiene un valor que indica si los valores localizables del objeto especificado se deben conservar en un recurso.
Método públicoToString Retorna una cadena que representa al objeto actual. (Se hereda de Object).
Arriba

LocalizationExtenderProvider puede ampliar una interfaz IRootDesigner con un conjunto de propiedades y métodos que proporcionan compatibilidad para la arquitectura de localización de .NET Framework. Para obtener más información sobre cómo utilizar los recursos, vea Localización.

La arquitectura de localización permite a los diseñadores inicializar las propiedades de los componentes mediante archivos de recursos que se pueden intercambiar en tiempo de ejecución para admitir diferentes idiomas, estilos específicos de la referencia cultural y características de configuración dinámica. Los métodos de esta clase se pueden utilizar para permitir que los diseñadores y los generadores de código realicen cargas de los recursos y compilen códigos de inicialización que utilicen las características de localización.

Los serializadores predeterminados que se incluyen en Visual Studio ya pueden localizar componentes y controles, pero sólo lo hacen si detectan compatibilidad con la arquitectura de localización de .NET Framework. Para detectar la presencia de la compatibilidad para localización, el sistema de serialización debe encontrar una propiedad Boolean pública denominada "Localizable" en el componente del diseñador raíz. Si un serializador encuentra esta propiedad, busca una propiedad del tipo CultureInfo denominada "Language" para determinar la configuración actual de los recursos. Los serializadores predeterminados utilizan estas propiedades para determinar si deben localizar los recursos del componente que se puedan localizar y, en ese caso, con qué formato de CultureInfo se debe guardar la información del recurso.

En el ejemplo de código siguiente se agrega un LocalizationExtenderProvider a un componente.


// Adds a LocalizationExtenderProvider that provides localization support properties to the specified component.
extender = new LocalizationExtenderProvider(this.component.Site, this.component);


En el ejemplo de código siguiente se incluyen un diseñador y un componente de ejemplo. El diseñador utiliza un LocalizationExtenderProvider con el fin de agregar propiedades de compatibilidad de localización para el componente.


using System;
using System.Collections;
using System.ComponentModel;
using System.ComponentModel.Design;
using System.Diagnostics;
using System.Drawing;
using System.Windows.Forms;
using System.Windows.Forms.Design;

// This example demonstrates adding localization support to a component hierarchy from a 
// custom IRootDesigner using the LocalizationExtenderProvider class.
namespace LocalizationExtenderProviderExample
{	
    // RootViewDesignerComponent is a component associated with the SampleRootDesigner
    // IRootDesigner that provides LocalizationExtenderProvider localization support.
    // This derived class is included at the top of this example to enable 
    // easy launching of designer view without having to put the class in its own file.
    public class RootViewDesignerComponent : RootDesignedComponent
    {  
        public RootViewDesignerComponent()
        {            
        }
    }

    // The following attribute associates the RootDesignedComponent with the RootDesignedComponent component.
    [Designer(typeof(SampleRootDesigner), typeof(IRootDesigner))]
    public class RootDesignedComponent : Component
    {
        public RootDesignedComponent()
        {
        }    
    }

    // Example IRootDesigner implementation demonstrates LocalizationExtenderProvider support.
    internal class SampleRootDesigner : IRootDesigner
    {
        // RootDesignerView Control provides a full region designer view for this root designer's associated component.
        private RootDesignerView m_view;			
        // Stores reference to the LocalizationExtenderProvider this designer adds, in order to remove it on Dispose.
        private LocalizationExtenderProvider extender;        
        // Internally stores the IDesigner's component reference
        private IComponent component;                

        // Adds a LocalizationExtenderProvider for the component this designer is initialized to support.
        public void Initialize(System.ComponentModel.IComponent component)
        {
           this.component = component;

            // If no extender from this designer is active...
            if( extender == null )
            {
                // Adds a LocalizationExtenderProvider that provides localization support properties to the specified component.
                extender = new LocalizationExtenderProvider(this.component.Site, this.component);
            }
        }

        // Provides a RootDesignerView object that supports ViewTechnology.WindowsForms.
        object IRootDesigner.GetView(ViewTechnology technology) 
        {
            if (technology != ViewTechnology.WindowsForms)
            {
                throw new ArgumentException("Not a supported view technology", "technology");
            }
            if (m_view == null )
            {
                // Create the view control. In this example, a Control of type RootDesignerView is used.
                // A WindowsForms ViewTechnology view provider requires a class that inherits from Control.
                m_view = new RootDesignerView(this, this.Component);
            }
            return m_view;
        }

        // This designer supports the WindowsForms view technology.
        ViewTechnology[] IRootDesigner.SupportedTechnologies 
        {
            get
            {
                return new ViewTechnology[] {ViewTechnology.WindowsForms};
            }
        }

        // If a LocalizationExtenderProvider has been added, removes the extender provider.
        protected void Dispose(bool disposing)
        {            
            // If an extender has been added, remove it
            if( extender != null  )  
            {
                // Disposes of the extender provider.  The extender 
                // provider removes itself from the extender provider
                // service when it is disposed.
                extender.Dispose();
                extender = null;                
            }            
        }

        // Empty IDesigner interface property and method implementations
        public System.ComponentModel.Design.DesignerVerbCollection Verbs
        {
            get
            {
                return null;
            }
        }

        public System.ComponentModel.IComponent Component
        {
            get
            {
                return this.component;
            }
        }

        public void DoDefaultAction()
        {            
        }

        public void Dispose()
        {        
        }

        // RootDesignerView is a simple control that will be displayed in the designer window.
        private class RootDesignerView : Control
        {
            private SampleRootDesigner m_designer;   
            private IComponent comp;

            public RootDesignerView(SampleRootDesigner designer, IComponent component)
            {
                m_designer = designer;                        
                this.comp = component;      
                BackColor = Color.Blue;
                Font = new Font(FontFamily.GenericMonospace, 12);
            }

            // Displays the name of the component and the name of the assembly of the component 
            // that this root designer is providing support for.
            protected override void OnPaint(PaintEventArgs pe)
            {
                base.OnPaint(pe);

                if( m_designer != null && comp != null )
                {
                    // Draws the name of the component in large letters.
                    pe.Graphics.DrawString("Root Designer View", Font, Brushes.Yellow, 8, 4);                    
                    pe.Graphics.DrawString("Design Name  : "+comp.Site.Name, new Font("Arial", 10), Brushes.Yellow, 8, 28);                    
                    pe.Graphics.DrawString("Assembly    : "+comp.GetType().AssemblyQualifiedName, new Font("Arial", 10), Brushes.Yellow, new Rectangle(new Point(8, 44), new Size(ClientRectangle.Width-8, ClientRectangle.Height-44)));                   

                    // Uses the site of the component to acquire an ISelectionService and sets the property grid focus to the component.
                    ISelectionService selectionService = (ISelectionService)comp.Site.GetService(typeof(ISelectionService));
                    if( selectionService != null )                
                        selectionService.SetSelectedComponents( new IComponent[] { m_designer.component } );             
                }
            }
        }
    }
}


.NET Framework

Compatible con: 1.1, 1.0
Obsoleto (advertencia del compilador) en 4.5.2
Obsoleto (advertencia del compilador) en 4.5.1
Obsoleto (advertencia del compilador) en 4.5
Obsoleto (advertencia del compilador) en 4
Obsoleto (advertencia del compilador) en 3.5
Obsoleto (advertencia del compilador) en 3.5 SP1
Obsoleto (advertencia del compilador) en 3.0
Obsoleto (advertencia del compilador) en 3.0 SP1
Obsoleto (advertencia del compilador) en 3.0 SP2
Obsoleto (advertencia del compilador) en 2.0
Obsoleto (advertencia del compilador) en 2.0 SP1
Obsoleto (advertencia del compilador) en 2.0 SP2

Windows Phone 8.1, Windows Phone 8, Windows 8.1, Windows Server 2012 R2, Windows 8, Windows Server 2012, Windows 7, Windows Vista SP2, Windows Server 2008 (no se admite el rol Server Core), Windows Server 2008 R2 (se admite el rol Server Core con SP1 o versiones posteriores; no se admite Itanium)

.NET Framework no admite todas las versiones de todas las plataformas. Para obtener una lista de las versiones compatibles, vea Requisitos de sistema de .NET Framework.

Todos los miembros static (Shared en Visual Basic) públicos de este tipo son seguros para la ejecución de subprocesos. No se garantiza que los miembros de instancias sean seguros para la ejecución de subprocesos.

Adiciones de comunidad

AGREGAR
Mostrar:
© 2015 Microsoft