Condividi tramite


Classe FeatureConnectorAttribute

Aggiornamento: novembre 2007

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

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

Sintassi

<AttributeUsageAttribute(AttributeTargets.Class, AllowMultiple := True)> _
Public NotInheritable Class FeatureConnectorAttribute _
    Inherits Attribute

Dim instance As FeatureConnectorAttribute
[AttributeUsageAttribute(AttributeTargets.Class, AllowMultiple = true)]
public sealed class FeatureConnectorAttribute : Attribute
[AttributeUsageAttribute(AttributeTargets::Class, AllowMultiple = true)]
public ref class FeatureConnectorAttribute sealed : public Attribute
public final class FeatureConnectorAttribute extends Attribute

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

Gerarchia di ereditarietà

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

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

Membri FeatureConnectorAttribute

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