LocalizationExtenderProvider クラス
定義
重要
一部の情報は、リリース前に大きく変更される可能性があるプレリリースされた製品に関するものです。 Microsoft は、ここに記載されている情報について、明示または黙示を問わず、一切保証しません。
注意事項
This class has been deprecated. Use CodeDomLocalizationProvider instead. http://go.microsoft.com/fwlink/?linkid=14202
ローカリゼーション機能のデザイン時のサポートをルート デザイナーに提供します。
public ref class LocalizationExtenderProvider : IDisposable, System::ComponentModel::IExtenderProvider
public class LocalizationExtenderProvider : IDisposable, System.ComponentModel.IExtenderProvider
[System.Obsolete("This class has been deprecated. Use CodeDomLocalizationProvider instead. http://go.microsoft.com/fwlink/?linkid=14202")]
public class LocalizationExtenderProvider : IDisposable, System.ComponentModel.IExtenderProvider
type LocalizationExtenderProvider = class
interface IExtenderProvider
interface IDisposable
[<System.Obsolete("This class has been deprecated. Use CodeDomLocalizationProvider instead. http://go.microsoft.com/fwlink/?linkid=14202")>]
type LocalizationExtenderProvider = class
interface IExtenderProvider
interface IDisposable
Public Class LocalizationExtenderProvider
Implements IDisposable, IExtenderProvider
- 継承
-
LocalizationExtenderProvider
- 属性
- 実装
例
次のコード例では、 を LocalizationExtenderProvider コンポーネントに追加します。
// Adds a LocalizationExtenderProvider that provides localization support properties to the specified component.
extender = gcnew LocalizationExtenderProvider( this->component->Site,this->component );
// Adds a LocalizationExtenderProvider that provides localization support properties to the specified component.
extender = new LocalizationExtenderProvider(this.component.Site, this.component);
' Adds a LocalizationExtenderProvider that provides localization support properties to the specified component.
extender = New LocalizationExtenderProvider(Me.component_.Site, Me.component_)
次のコード例には、コンポーネントとデザイナーの例が含まれています。 デザイナーでは、 を LocalizationExtenderProvider 使用して、コンポーネントのローカライズ サポート プロパティを追加します。
#using <system.dll>
#using <system.design.dll>
#using <system.windows.forms.dll>
#using <system.drawing.dll>
using namespace System;
using namespace System::Collections;
using namespace System::ComponentModel;
using namespace System::ComponentModel::Design;
using namespace System::Diagnostics;
using namespace System::Drawing;
using namespace System::Windows::Forms;
using namespace System::Windows::Forms::Design;
// This example demonstrates adding localization support to a component hierarchy from a
// custom IRootDesigner using the LocalizationExtenderProvider class.
namespace LocalizationExtenderProviderExample
{
// Example IRootDesigner implementation demonstrates LocalizationExtenderProvider support.
private ref class SampleRootDesigner: public IRootDesigner
{
private:
// RootDesignerView is a simple control that will be displayed in the designer window.
ref class RootDesignerView: public Control
{
private:
SampleRootDesigner^ m_designer;
IComponent^ comp;
public:
RootDesignerView( SampleRootDesigner^ designer, IComponent^ component )
{
m_designer = designer;
this->comp = component;
BackColor = Color::Blue;
Font = gcnew System::Drawing::Font( FontFamily::GenericMonospace,12 );
}
protected:
// Displays the name of the component and the name of the assembly of the component
// that this root designer is providing support for.
virtual void OnPaint( PaintEventArgs^ pe ) override
{
Control::OnPaint( pe );
if ( m_designer != 0 && comp != 0 )
{
// Draws the name of the component in large letters.
pe->Graphics->DrawString( "Root Designer View", Font, Brushes::Yellow, 8, 4 );
pe->Graphics->DrawString( String::Concat( "Design Name : ", comp->Site->Name ), gcnew System::Drawing::Font( "Arial",10 ), Brushes::Yellow, 8, 28 );
pe->Graphics->DrawString( String::Concat( "Assembly : ", comp->GetType()->AssemblyQualifiedName ), gcnew System::Drawing::Font( "Arial",10 ), Brushes::Yellow, System::Drawing::RectangleF( System::Drawing::Point( 8, 44 ), System::Drawing::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 = dynamic_cast<ISelectionService^>(comp->Site->GetService( typeid<ISelectionService^> ));
if ( selectionService != nullptr )
{
array<IComponent^>^myArray = {m_designer->component};
selectionService->SetSelectedComponents( static_cast<Array^>(myArray) );
}
}
}
};
protected:
// RootDesignerView Control provides a full region designer view for this root designer's associated component.
RootDesignerView^ m_view;
// Stores reference to the LocalizationExtenderProvider this designer adds, in order to remove it on Dispose.
LocalizationExtenderProvider^ extender;
// Internally stores the IDesigner's component reference
IComponent^ component;
// Provides a RootDesignerView object that supports ViewTechnology.WindowsForms.
Object^ GetView( ViewTechnology technology )
{
if ( technology != ViewTechnology::WindowsForms )
{
throw gcnew ArgumentException( "Not a supported view technology", "technology" );
}
if ( m_view == nullptr )
{
// 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 = gcnew RootDesignerView( this,this->Component );
}
return m_view;
}
property array<ViewTechnology>^ SupportedTechnologies
{
// This designer supports the WindowsForms view technology.
array<ViewTechnology>^ IRootDesigner::get()
{
ViewTechnology myArray[] = {ViewTechnology::WindowsForms};
return myArray;
}
}
public:
// Adds a LocalizationExtenderProvider for the component this designer is initialized to support.
void Initialize( IComponent^ component )
{
this->component = component;
// If no extender from this designer is active...
if ( extender == nullptr )
{
// Adds a LocalizationExtenderProvider that provides localization support properties to the specified component.
extender = gcnew LocalizationExtenderProvider( this->component->Site,this->component );
}
}
property DesignerVerbCollection^ Verbs
{
// Empty IDesigner interface property and method implementations
DesignerVerbCollection^ get()
{
return nullptr;
}
}
property IComponent^ Component
{
IComponent^ get()
{
return this->component;
}
}
void DoDefaultAction(){}
void Dispose(){}
protected:
// If a LocalizationExtenderProvider has been added, removes the extender provider.
void Dispose( bool disposing )
{
// If an extender has been added, remove it
if ( extender != nullptr )
{
// Disposes of the extender provider. The extender
// provider removes itself from the extender provider
// service when it is disposed.
extender->Dispose();
extender = nullptr;
}
}
};
// The following attribute associates the RootDesignedComponent with the RootDesignedComponent component.
[Designer(__typeof(SampleRootDesigner),__typeof(IRootDesigner))]
public ref class RootDesignedComponent: public Component
{
public:
RootDesignedComponent(){}
};
// 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 ref class RootViewDesignerComponent: public RootDesignedComponent
{
public:
RootViewDesignerComponent(){}
};
}
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 } );
}
}
}
}
}
Imports System.Collections
Imports System.ComponentModel
Imports System.ComponentModel.Design
Imports System.Diagnostics
Imports System.Drawing
Imports System.Windows.Forms
Imports System.Windows.Forms.Design
' This example demonstrates adding localization support to a component hierarchy from a
' custom IRootDesigner using the LocalizationExtenderProvider class.
' 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
Inherits RootDesignedComponent
Public Sub New()
End Sub
End Class
' The following attribute associates the RootDesignedComponent with the RootDesignedComponent component.
<Designer(GetType(SampleRootDesigner), GetType(IRootDesigner))> _
Public Class RootDesignedComponent
Inherits Component
Public Sub New()
End Sub
End Class
' Example IRootDesigner implementation demonstrates LocalizationExtenderProvider support.
Friend Class SampleRootDesigner
Implements IRootDesigner
' RootDesignerView Control provides a full region designer view for this root designer's associated component.
Private m_view As RootDesignerView
' Stores reference to the LocalizationExtenderProvider this designer adds, in order to remove it on Dispose.
Private extender As LocalizationExtenderProvider
' Internally stores the IDesigner's component reference
Private component_ As IComponent
' Adds a LocalizationExtenderProvider for the component this designer is initialized to support.
Public Sub Initialize(ByVal component As System.ComponentModel.IComponent) Implements IRootDesigner.Initialize
Me.component_ = component
' If no extender from this designer is active...
If extender Is Nothing Then
' Adds a LocalizationExtenderProvider that provides localization support properties to the specified component.
extender = New LocalizationExtenderProvider(Me.component_.Site, Me.component_)
End If
End Sub
' Provides a RootDesignerView object that supports ViewTechnology.WindowsForms.
Function GetView(ByVal technology As ViewTechnology) As Object Implements IRootDesigner.GetView
If technology <> ViewTechnology.WindowsForms Then
Throw New ArgumentException("Not a supported view technology", "technology")
End If
If m_view Is Nothing Then
' 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(Me, Me.Component)
End If
Return m_view
End Function
' This designer supports the WindowsForms view technology.
ReadOnly Property SupportedTechnologies() As ViewTechnology() Implements IRootDesigner.SupportedTechnologies
Get
Return New ViewTechnology() {ViewTechnology.WindowsForms}
End Get
End Property
' If a LocalizationExtenderProvider has been added, removes the extender provider.
Protected Overloads Sub Dispose(ByVal disposing As Boolean)
' If an extender has been added, remove it
If (extender IsNot Nothing) Then
' Disposes of the extender provider. The extender
' provider removes itself from the extender provider
' service when it is disposed.
extender.Dispose()
extender = Nothing
End If
End Sub
' Empty IDesigner interface property and method implementations
Public ReadOnly Property Verbs() As System.ComponentModel.Design.DesignerVerbCollection Implements IDesigner.Verbs
Get
Return Nothing
End Get
End Property
Public ReadOnly Property Component() As System.ComponentModel.IComponent Implements IRootDesigner.Component
Get
Return Me.component_
End Get
End Property
Public Sub DoDefaultAction() Implements IDesigner.DoDefaultAction
End Sub
Public Overloads Sub Dispose() Implements IDisposable.Dispose
End Sub
' RootDesignerView is a simple control that will be displayed in the designer window.
Private Class RootDesignerView
Inherits Control
Private m_designer As SampleRootDesigner
Private comp As IComponent
Public Sub New(ByVal designer As SampleRootDesigner, ByVal component As IComponent)
m_designer = designer
Me.comp = component
BackColor = Color.Blue
Font = New Font(FontFamily.GenericMonospace, 12)
End Sub
' Displays the name of the component and the name of the assembly of the component
' that this root designer is providing support for.
Protected Overrides Sub OnPaint(ByVal pe As PaintEventArgs)
MyBase.OnPaint(pe)
If (m_designer IsNot Nothing) AndAlso (comp IsNot Nothing) Then
' 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)
' Uses the site of the component to acquire an ISelectionService and sets the property grid focus to the component.
Dim selectionService As ISelectionService = CType(comp.Site.GetService(GetType(ISelectionService)), ISelectionService)
If (selectionService IsNot Nothing) Then
selectionService.SetSelectedComponents(New IComponent() {m_designer.Component})
End If
End If
End Sub
End Class
End Class
注釈
LocalizationExtenderProviderでは、.NET Frameworkローカライズ アーキテクチャのサポートを提供するプロパティとメソッドのセットを使用して を拡張IRootDesignerできます。 リソースの使用の詳細については、「 ローカライズ」を参照してください。
ローカライズ サポート アーキテクチャを使用すると、デザイナーは実行時にスワップできるリソース ファイルを使用してコンポーネント プロパティを初期化し、さまざまな言語、カルチャ固有のスタイル、動的に構成可能な機能をサポートできます。 このクラスの メソッドを使用すると、デザイナーとコード生成シリアライザーを使用してリソースから読み込み、ローカライズ機能を使用する初期化コードをビルドできます。
Visual Studio に付属する既定のシリアライザーは既にコンポーネントとコントロールをローカライズできますが、これは、.NET Frameworkローカライズ アーキテクチャのサポートを見つけた場合にのみ行います。 ローカライズ サポートの存在を検出するには、シリアル化システムがルート デザイナー コンポーネントで "Localizable" という名前のパブリック Boolean プロパティを見つける必要があります。 シリアライザーは、このプロパティを見つけた場合、"Language" という名前の型 CultureInfo のプロパティを検索して、現在のリソース構成を確認します。 既定のシリアライザーは、これらのプロパティを使用して、コンポーネントのローカライズ可能なリソースをローカライズする必要があるかどうかを判断し、その場合はリソース CultureInfo 情報を保存する形式を決定します。
コンストラクター
LocalizationExtenderProvider(ISite, IComponent) |
古い.
サービス プロバイダーと基本コンポーネントを指定して、LocalizationExtenderProvider クラスの新しいインスタンスを初期化します。 |
メソッド
CanExtend(Object) |
古い.
オブジェクトが、指定したオブジェクトに対してエクステンダー プロパティを提供できるかどうかを示します。 |
Dispose() |
古い.
LocalizationExtenderProvider で使用されていたリソース (メモリを除く) を解放します。 |
Dispose(Boolean) |
古い.
LocalizationExtenderProvider によって使用されているアンマネージド リソースを解放し、オプションでマネージド リソースも解放します。 |
Equals(Object) |
古い.
指定されたオブジェクトが現在のオブジェクトと等しいかどうかを判断します。 (継承元 Object) |
GetHashCode() |
古い.
既定のハッシュ関数として機能します。 (継承元 Object) |
GetLanguage(Object) |
古い.
指定したオブジェクトの現在のリソース カルチャを取得します。 |
GetLoadLanguage(Object) |
古い.
デザイン時にローカライズされるオブジェクトの値を初期化するときに使用する既定のリソース カルチャを取得します。 |
GetLocalizable(Object) |
古い.
指定したオブジェクトがリソースのローカリゼーションをサポートしているかどうかを示す値を取得します。 |
GetType() |
古い.
現在のインスタンスの Type を取得します。 (継承元 Object) |
MemberwiseClone() |
古い.
現在の Object の簡易コピーを作成します。 (継承元 Object) |
ResetLanguage(Object) |
古い.
指定したオブジェクトのリソース カルチャをリセットします。 |
SetLanguage(Object, CultureInfo) |
古い.
指定したオブジェクトの現在のリソース カルチャとして、指定したリソース カルチャを設定します。 |
SetLocalizable(Object, Boolean) |
古い.
指定したオブジェクトでローカライズされたリソースがサポートされているかどうかを示す値を設定します。 |
ShouldSerializeLanguage(Object) |
古い.
指定したオブジェクトがローカライズ可能な値をリソースに永続化する必要があるかどうかを示す値を取得します。 |
ToString() |
古い.
現在のオブジェクトを表す文字列を返します。 (継承元 Object) |
適用対象
.NET