Classe FeatureConnectorAttribute

Indica il tipo di FeatureConnector<TFeatureProviderType> richiesto per gestire FeatureProvider.

Gerarchia di ereditarietà

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

Spazio dei nomi:  Microsoft.Windows.Design.Features
Assembly:  Microsoft.Windows.Design.Extensibility (in Microsoft.Windows.Design.Extensibility.dll)

Sintassi

'Dichiarazione
<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

Il tipo FeatureConnectorAttribute espone i seguenti membri.

Costruttori

  Nome Descrizione
Metodo pubblico FeatureConnectorAttribute Inizializza una nuova istanza della classe FeatureConnectorAttribute.

In alto

Proprietà

  Nome Descrizione
Proprietà pubblica FeatureConnectorType Ottiene il tipo di FeatureConnector<TFeatureProviderType> di cui creare un'istanza.
Proprietà pubblica TypeId Ottiene un oggetto utilizzato per determinare attributi univoci. (Esegue l'override di Attribute.TypeId).

In alto

Metodi

  Nome Descrizione
Metodo pubblico Equals Restituisce un valore che indica se l'istanza è uguale a un oggetto specificato. (Esegue l'override di Attribute.Equals(Object)).
Metodo protetto Finalize Consente a un oggetto di provare a liberare risorse ed eseguire altre operazioni di pulitura prima che l'oggetto stesso venga recuperato dalla procedura di Garbage Collection. (Ereditato da Object)
Metodo pubblico GetHashCode Restituisce il codice hash per l'istanza. (Esegue l'override di Attribute.GetHashCode()).
Metodo pubblico GetType Ottiene l'oggetto Type dell'istanza corrente. (Ereditato da Object)
Metodo pubblico IsDefaultAttribute Quando è sottoposto a override in una classe derivata, indica se il valore di questa istanza è il valore predefinito della classe derivata. (Ereditato da Attribute)
Metodo pubblico Match Quando è sottoposto a override in una classe derivata, restituisce un valore che indica se questa istanza equivale a un oggetto specificato. (Ereditato da Attribute)
Metodo protetto MemberwiseClone Consente di creare una copia dei riferimenti dell'oggetto Object corrente. (Ereditato da Object)
Metodo pubblico ToString Restituisce una stringa che rappresenta l'oggetto corrente. (Ereditato da Object)

In alto

Implementazioni esplicite dell'interfaccia

  Nome Descrizione
Implementazione esplicita dell'interfacciaMetodo privato _Attribute.GetIDsOfNames Esegue il mapping di un set di nomi a un set corrispondente di ID di invio. (Ereditato da Attribute)
Implementazione esplicita dell'interfacciaMetodo privato _Attribute.GetTypeInfo Recupera le informazioni sul tipo relative a un oggetto, che possono essere utilizzate per ottenere informazioni sul tipo relative a un'interfaccia. (Ereditato da Attribute)
Implementazione esplicita dell'interfacciaMetodo privato _Attribute.GetTypeInfoCount Recupera il numero delle interfacce di informazioni di tipo fornite da un oggetto (0 o 1). (Ereditato da Attribute)
Implementazione esplicita dell'interfacciaMetodo privato _Attribute.Invoke Fornisce l'accesso a proprietà e metodi esposti da un oggetto. (Ereditato da Attribute)

In alto

Note

Applicare FeatureConnectorAttribute alla classe FeatureProvider personalizzata per specificare un oggetto FeatureConnector<TFeatureProviderType> che pubblica un servizio richiesto da FeatureProvider.

Esempi

Nell'esempio di codice seguente viene illustrato come utilizzare FeatureConnectorAttribute per associare una classe FeatureConnector<TFeatureProviderType> a un provider di funzionalità personalizzato denominato DiagnosticsMenuProvider. Per l'elenco di codice completo, vedere Procedura: creare un connettore di funzionalità personalizzato.

' 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();
    }
}

Codice thread safe

Qualsiasi membro static (Shared in Visual Basic) pubblico di questo tipo è thread-safe. I membri di istanza non sono garantiti come thread-safe.

Vedere anche

Riferimenti

Spazio dei nomi Microsoft.Windows.Design.Features

FeatureManager

FeatureProvider

FeatureConnector<TFeatureProviderType>

Altre risorse

Provider di funzionalità e connettori di funzionalità

Informazioni sull'estensibilità Progettazione WPF