FeatureConnector<TFeatureProviderType> – třída
Poskytuje základní implementace pro všechny funkce založené na konektor rozšiřitelnosti.
Hierarchie dědičnosti
System.Object
Microsoft.Windows.Design.Features.FeatureConnector<TFeatureProviderType>
Microsoft.Windows.Design.Policies.PolicyDrivenFeatureConnector<TFeatureProviderType>
Obor názvů: Microsoft.Windows.Design.Features
Sestavení: Microsoft.Windows.Design.Extensibility (v Microsoft.Windows.Design.Extensibility.dll)
Syntaxe
'Deklarace
Public MustInherit Class FeatureConnector(Of TFeatureProviderType As FeatureProvider) _
Implements IDisposable
public abstract class FeatureConnector<TFeatureProviderType> : IDisposable
where TFeatureProviderType : FeatureProvider
generic<typename TFeatureProviderType>
where TFeatureProviderType : FeatureProvider
public ref class FeatureConnector abstract : IDisposable
[<AbstractClass>]
type FeatureConnector<'TFeatureProviderType when 'TFeatureProviderType : FeatureProvider> =
class
interface IDisposable
end
Jazyk JScript nepodporuje obecné typy a metody.
Parametry typu
- TFeatureProviderType
Typ zprostředkovatele funkce.
Typ FeatureConnector<TFeatureProviderType> zveřejňuje následující členy.
Konstruktory
Název | Popis | |
---|---|---|
FeatureConnector<TFeatureProviderType> | Inicializuje novou instanci FeatureConnector<TFeatureProviderType> Třída |
Na začátek
Vlastnosti
Název | Popis | |
---|---|---|
Context | Funkce konektoru získá kontext pro úpravy. | |
Manager | Získává FeatureManager pro konektor funkce. |
Na začátek
Metody
Název | Popis | |
---|---|---|
CreateFeatureProviders(Type) | Vytvoří nový seznam poskytovatelů funkce spojené s konektoru funkce na základě zadaného typu. | |
CreateFeatureProviders<TSubtype>(Type) | Vytvoří nový seznam poskytovatelů funkce související s funkcí konektor, na základě zadaného typu a podtypu. | |
Dispose() | Uvolní všechny prostředky používané FeatureConnector<TFeatureProviderType>. | |
Dispose(Boolean) | Uvolní nespravované prostředky používané FeatureConnector<TFeatureProviderType> a volitelně spravované prostředky. | |
Equals | Určuje, zda zadaná Object se rovná aktuální Object. (Zděděno z Object.) | |
Finalize | Umožňuje zkuste uvolnit prostředky a provádět další operace vyčištění před je převzaty systémem pro uvolnění objektu. (Přepisuje Object.Finalize().) | |
GetHashCode | Slouží jako funkce hash určitého typu. (Zděděno z Object.) | |
GetType | Získává Type aktuální instance. (Zděděno z Object.) | |
MemberwiseClone | Vytvoří kopii aktuální Object. (Zděděno z Object.) | |
ToString | Vrátí řetězec, který představuje aktuální objekt. (Zděděno z Object.) |
Na začátek
Poznámky
Pocházet z přehledu FeatureConnector<TFeatureProviderType> třídy potřebujete implementovat nejhlubší úroveň integrace se Návrhář WPF. Funkci spojnic lze přihlásit globální služby a přidat své vlastní služby.
Zprostředkovatelé použití funkce FeatureConnectorAttribute určete konektor související funkce.
FeatureConnector<TFeatureProviderType> Základní třídy je obecný a spotřebovává typ zprostředkovatele funkce, FeatureConnector<TFeatureProviderType> hostitelů.
Funkce spojnice jsou vytvořena poptávka. Při FeatureManager třídy zjistí FeatureConnectorAttribute na FeatureProvider, vytvoří zadaný FeatureConnector<TFeatureProviderType>, pokud již neexistuje.
Přehledu FeatureConnector<TFeatureProviderType> třída implementuje IDisposable rozhraní, který propaguje provádění jednoduché čištění.
Většina funkcí FeatureConnector<TFeatureProviderType> jsou třídy implementovány v chráněné CreateFeatureProviders metod. Předáním do této metody objektu způsobuje konektor funkce vyhledávání FeatureAttribute typy objektu. Pokud tyto atributy jsou nalezeny, FeatureProvider instance přidružené každý atribut je vytvořen a vráceny v seznamu.
Příklady
Následující příklad kódu ukazuje, jak lze odvodit z FeatureConnector<TFeatureProviderType> třídy připojit vlastní funkci zprostředkovatele s názvem DiagnosticsMenuProvider s vlastní služby s názvem IDiagnosticsService. Kód úplný seznam naleznete v How to: Create a Custom Feature Connector.
' The IDiagnosticsService specifies a simple interface for showing
' a FeatureManagerDiagnostics window.
Interface IDiagnosticsService
Sub ShowWindow()
End Interface
...
' The DiagnosticsFeatureConnector publishes the IDiagnosticsService.
Class DiagnosticsFeatureConnector
Inherits FeatureConnector(Of DiagnosticsMenuProvider)
Implements IDiagnosticsService
Dim fmdWindow As FeatureManagerDiagnostics
Public Sub New(ByVal manager As FeatureManager)
MyBase.New(manager)
Context.Services.Publish(Of IDiagnosticsService)(Me)
End Sub
' The showWindow method creates a FeatureManagerDiagnostics
' window and shows it.
Public Sub ShowWindow() Implements IDiagnosticsService.ShowWindow
If fmdWindow IsNot Nothing Then
' Show the FeatureManagerDiagnostics window.
fmdWindow.Show()
' Activate the
fmdWindow.Activate()
Else
fmdWindow = New FeatureManagerDiagnostics()
fmdWindow.Initialize(Manager)
AddHandler fmdWindow.Closed, AddressOf fmdWindow_Closed
fmdWindow.Show()
End If
End Sub
Sub fmdWindow_Closed(ByVal sender As Object, ByVal e As EventArgs)
fmdWindow = Nothing
End Sub
End Class
// The IDiagnosticsService specifies a simple interface for showing
// a FeatureManagerDiagnostics window.
interface IDiagnosticsService
{
void ShowWindow();
}
...
// The DiagnosticsFeatureConnector publishes the IDiagnosticsService.
class DiagnosticsFeatureConnector : FeatureConnector<DiagnosticsMenuProvider>,
IDiagnosticsService
{
FeatureManagerDiagnostics fmdWindow;
public DiagnosticsFeatureConnector(FeatureManager manager)
: base(manager)
{
Context.Services.Publish<IDiagnosticsService>(this);
}
#region IDiagnosticsService Members
// The showWindow method creates a FeatureManagerDiagnostics
// window and shows it.
public void ShowWindow()
{
if (fmdWindow != null)
{
fmdWindow.Show();
fmdWindow.Activate();
}
else
{
fmdWindow = new FeatureManagerDiagnostics();
fmdWindow.Initialize(Manager);
fmdWindow.Closed += new EventHandler(fmdWindow_Closed);
fmdWindow.Show();
}
}
void fmdWindow_Closed(object sender, EventArgs e)
{
fmdWindow = null;
}
#endregion
}
Zabezpečení podprocesu
Všechny veřejné členy static (Shared v jazyce Visual Basic) tohoto typu jsou zabezpečeny pro používání podprocesů. Zabezpečení sdílených členů pro používání podprocesů není zaručeno.
Viz také
Odkaz
Microsoft.Windows.Design.Features – obor názvů
Další zdroje
How to: Create a Custom Feature Connector