次の方法で共有


FeatureConnectorAttribute クラス

更新 : 2007 年 11 月

FeatureProvider の処理に必要な FeatureConnector<TFeatureProviderType> の型を示します。

名前空間 :  Microsoft.Windows.Design.Features
アセンブリ :  Microsoft.Windows.Design.Extensibility (Microsoft.Windows.Design.Extensibility.dll 内)

構文

'宣言
<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

解説

FeatureProvider で必要なサービスを発行する FeatureConnector<TFeatureProviderType> を指定するには、FeatureConnectorAttribute をカスタム FeatureProvider クラスに適用します。

FeatureConnectorAttribute を使用して FeatureConnector<TFeatureProviderType> クラスと DiagnosticsMenuProvider という名前のカスタム機能プロバイダを関連付ける方法を次のコード例に示します。完全なコードの一覧については、「方法 : カスタム機能コネクタを作成する」を参照してください。

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

継承階層

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

スレッド セーフ

この型のすべてのパブリック static (Visual Basic では Shared) メンバは、スレッド セーフです。インスタンス メンバの場合は、スレッド セーフであるとは限りません。

参照

参照

FeatureConnectorAttribute メンバ

Microsoft.Windows.Design.Features 名前空間

FeatureManager

FeatureProvider

FeatureConnector<TFeatureProviderType>

その他の技術情報

機能プロバイダと機能コネクタ

WPF デザイナの機能拡張について