Partager via


FeatureConnectorAttribute, classe

Indique le type FeatureConnector<TFeatureProviderType> requis pour gérer FeatureProvider.

Hiérarchie d'héritage

System.Object
  System.Attribute
    Microsoft.Windows.Design.Features.FeatureConnectorAttribute

Espace de noms :  Microsoft.Windows.Design.Features
Assembly :  Microsoft.Windows.Design.Extensibility (dans Microsoft.Windows.Design.Extensibility.dll)

Syntaxe

'Déclaration
<AttributeUsageAttribute(AttributeTargets.Class, AllowMultiple := True)> _
Public NotInheritable Class FeatureConnectorAttribute _
    Inherits Attribute
[AttributeUsageAttribute(AttributeTargets.Class, AllowMultiple = true)]
public sealed class FeatureConnectorAttribute : Attribute
[AttributeUsageAttribute(AttributeTargets::Class, AllowMultiple = true)]
public ref class FeatureConnectorAttribute sealed : public Attribute
[<Sealed>]
[<AttributeUsageAttribute(AttributeTargets.Class, AllowMultiple = true)>]
type FeatureConnectorAttribute =  
    class
        inherit Attribute
    end
public final class FeatureConnectorAttribute extends Attribute

Le type FeatureConnectorAttribute expose les membres suivants.

Constructeurs

  Nom Description
Méthode publique FeatureConnectorAttribute Initialise une nouvelle instance de la classe FeatureConnectorAttribute.

Début

Propriétés

  Nom Description
Propriété publique FeatureConnectorType Obtient le type FeatureConnector<TFeatureProviderType> à instancier.
Propriété publique TypeId Obtient un objet utilisé pour déterminer des attributs uniques. (Substitue Attribute.TypeId.)

Début

Méthodes

  Nom Description
Méthode publique Equals Retourne une valeur indiquant si cette instance équivaut à un objet spécifié. (Substitue Attribute.Equals(Object).)
Méthode protégée Finalize Autorise un objet à tenter de libérer des ressources et d'exécuter d'autres opérations de nettoyage avant qu'il ne soit récupéré par l'opération garbage collection. (Hérité de Object.)
Méthode publique GetHashCode Retourne le code de hachage pour cette instance. (Substitue Attribute.GetHashCode().)
Méthode publique GetType Obtient le Type de l'instance actuelle. (Hérité de Object.)
Méthode publique IsDefaultAttribute En cas de substitution dans une classe dérivée, indique si la valeur de cette instance est la valeur par défaut pour la classe dérivée. (Hérité de Attribute.)
Méthode publique Match En cas de substitution dans une classe dérivée, retourne une valeur indiquant si cette instance équivaut à un objet spécifié. (Hérité de Attribute.)
Méthode protégée MemberwiseClone Crée une copie superficielle de l'objet Object actif. (Hérité de Object.)
Méthode publique ToString Retourne une chaîne qui représente l'objet actuel. (Hérité de Object.)

Début

Implémentations d'interface explicite

  Nom Description
Implémentation d'interface expliciteMéthode privée _Attribute.GetIDsOfNames Mappe un jeu de noms avec un jeu correspondant d'identificateurs de dispatch. (Hérité de Attribute.)
Implémentation d'interface expliciteMéthode privée _Attribute.GetTypeInfo Récupère les informations de type pour un objet, qui peuvent être utilisées pour obtenir les informations de type d'une interface. (Hérité de Attribute.)
Implémentation d'interface expliciteMéthode privée _Attribute.GetTypeInfoCount Récupère le nombre d'interfaces d'informations de type fourni par un objet (0 ou 1). (Hérité de Attribute.)
Implémentation d'interface expliciteMéthode privée _Attribute.Invoke Fournit l'accès aux propriétés et aux méthodes exposées par un objet. (Hérité de Attribute.)

Début

Notes

Appliquez le FeatureConnectorAttribute à votre classe FeatureProvider personnalisée pour spécifier un FeatureConnector<TFeatureProviderType> qui publie un service requis par votre FeatureProvider.

Exemples

L'exemple de code suivant indique comment utiliser FeatureConnectorAttribute pour associer une classe FeatureConnector<TFeatureProviderType> à un fournisseur de fonctionnalités personnalisé nommé DiagnosticsMenuProvider. Pour obtenir l'intégralité du code, consultez Comment : créer un connecteur de fonctionnalités personnalisé.

' The DiagnosticsMenuProvider class adds a context menu item
' that displays a dialog box listing the currently running and 
' pending feature connectors. 
<FeatureConnector(GetType(DiagnosticsFeatureConnector))>  _
Public Class DiagnosticsMenuProvider
    Inherits PrimarySelectionContextMenuProvider

    Public Sub New() 
        Dim action As New MenuAction("Feature Diagnostics...")

        AddHandler action.Execute, AddressOf action_Execute 

        Items.Add(action)    
    End Sub

    Sub action_Execute(ByVal sender As Object, ByVal e As MenuActionEventArgs) 
        Dim service As IDiagnosticsService = e.Context.Services.GetRequiredService(Of IDiagnosticsService)()

        service.ShowWindow()

    End Sub

End Class
// The DiagnosticsMenuProvider class adds a context menu item
// that displays a dialog box listing the currently running and 
// pending feature connectors. 
[FeatureConnector(typeof(DiagnosticsFeatureConnector))]
public class DiagnosticsMenuProvider : PrimarySelectionContextMenuProvider 
{
    public DiagnosticsMenuProvider() 
    {
        MenuAction action = new MenuAction("Feature Diagnostics...");

        action.Execute += new EventHandler<MenuActionEventArgs>(action_Execute); 

        Items.Add(action);
    }

    void action_Execute(object sender, MenuActionEventArgs e)
    {
        IDiagnosticsService service = 
            e.Context.Services.GetRequiredService<IDiagnosticsService>();

        service.ShowWindow();
    }
}

Sécurité des threads

Tous les membres static (Shared en Visual Basic) publics de ce type sont thread-safe. Il n'est pas garanti que les membres d'instance soient thread-safe.

Voir aussi

Référence

Microsoft.Windows.Design.Features, espace de noms

FeatureManager

FeatureProvider

FeatureConnector<TFeatureProviderType>

Autres ressources

Fournisseurs de fonctionnalités et connecteurs de fonctionnalités

Fonctionnement de l'extensibilité du Concepteur WPF