FeatureManager-Klasse
Aktualisiert: November 2007
Verwaltet Featureanbieter und Featureverbindungen.
Namespace: Microsoft.Windows.Design.Features
Assembly: Microsoft.Windows.Design.Extensibility (in Microsoft.Windows.Design.Extensibility.dll)
Syntax
'Declaration
Public Class FeatureManager _
Implements IDisposable
'Usage
Dim instance As FeatureManager
public class FeatureManager : IDisposable
public ref class FeatureManager : IDisposable
public class FeatureManager implements IDisposable
Hinweise
Verwenden Sie die FeatureManager-Klasse, um Featureanbieter zu erstellen und ausgeführte und ausstehende Featureverbindungen abzufragen.
Wenn eine Featureverbindung instanziiert werden muss, die noch nicht bestehende Dienste oder Kontextelemente abonniert, wird der Connectortyp als ausstehend in eine Liste eingetragen und dem Bearbeitungskontext werden Abonnements hinzugefügt. Wenn die richtigen Dienste und Elemente verfügbar werden, wird die Featureverbindung instanziiert.
Wenn einem Bearbeitungsmodell ein Objekt hinzugefügt wird, sollte das Bearbeitungsmodell die InitializeFeatures-Methode für den Feature-Manager aufrufen, die das Objekt auf Featureattribute untersucht. Sie folgt diesen Attributen zu FeatureConnector<TFeatureProviderType>-Attributen und stellt sicher, dass alle eindeutigen Verbindungen instanziiert wurden.
Beispiele
Im folgenden Beispielcode wird gezeigt, wie mit der FeatureManager-Klasse auf aktive und ausstehende Verbindungen zugegriffen wird. Die vollständige Codeauflistung finden Sie unter Gewusst wie: Erstellen einer benutzerdefinierten Featureverbindung.
Public Sub Initialize(ByVal manager As FeatureManager)
featManager = manager
Bind()
End Sub
...
' Binds the activatedFeatures and pendingFeatures controls
' the FeatureManager's RunningConnectors and PendingConnectors\
' properties.
Private Sub Bind()
activatedFeatures.Items.Clear()
pendingFeatures.Items.Clear()
Dim info As FeatureConnectorInformation
For Each info In featManager.RunningConnectors
activatedFeatures.Items.Add(info)
Next info
For Each info In featManager.PendingConnectors
pendingFeatures.Items.Add(info)
Next info
End Sub
public void Initialize(FeatureManager manager)
{
featManager = manager;
Bind();
}
...
// Binds the activatedFeatures and pendingFeatures controls
// the FeatureManager's RunningConnectors and PendingConnectors\
// properties.
private void Bind()
{
activatedFeatures.Items.Clear();
pendingFeatures.Items.Clear();
foreach (FeatureConnectorInformation info in
featManager.RunningConnectors)
{
activatedFeatures.Items.Add(info);
}
foreach (FeatureConnectorInformation info in
featManager.PendingConnectors)
{
pendingFeatures.Items.Add(info);
}
}
Vererbungshierarchie
System.Object
Microsoft.Windows.Design.Features.FeatureManager
Threadsicherheit
Alle öffentlichen static (Shared in Visual Basic)-Member dieses Typs sind threadsicher. Bei Instanzmembern ist die Threadsicherheit nicht gewährleistet.
Siehe auch
Referenz
Microsoft.Windows.Design.Features-Namespace
FeatureConnector<TFeatureProviderType>
Weitere Ressourcen
Gewusst wie: Erstellen einer benutzerdefinierten Featureverbindung