IVsDataProvider.IsOperationSupported メソッド (Guid, CommandID, Object)

特定の操作が現在の環境のプロバイダーでサポートされる指定 DDEX のデータ ソースでかどうかを判断します。

名前空間:  Microsoft.VisualStudio.Data.Core
アセンブリ:  Microsoft.VisualStudio.Data.Core (Microsoft.VisualStudio.Data.Core.dll 内)

構文

'宣言
Function IsOperationSupported ( _
    source As Guid, _
    command As CommandID, _
    context As Object _
) As Boolean
bool IsOperationSupported(
    Guid source,
    CommandID command,
    Object context
)
bool IsOperationSupported(
    Guid source, 
    CommandID^ command, 
    Object^ context
)
abstract IsOperationSupported : 
        source:Guid * 
        command:CommandID * 
        context:Object -> bool 
function IsOperationSupported(
    source : Guid, 
    command : CommandID, 
    context : Object
) : boolean

パラメーター

  • source
    型 : System.Guid
    DDEX のデータ ソースの識別子。
  • context
    型 : System.Object
    操作があるコンテキストを表すオブジェクト。

戻り値

型 : System.Boolean
操作が現在の環境のプロバイダーでサポートされている場合true ; それ以外 false。

例外

例外 条件
ArgumentNullException

command パラメーターが nullnull 参照 (Visual Basic では Nothing) です。

[<ANY>]

DDEX プロバイダーの IsOperationSupported の実装は例外をスローしました。

解説

このメソッドは、特定の操作が現在の環境の DDEX プロバイダーによってサポートされているかどうかをチェックする方法を DDEX のクライアントができます。Visual Studio のエディションが実行されるランタイム コンポーネントがコンピューターにインストールされて環境は異なる場合があります。以前は、Visual Studio のエディションによっては、通常 1 の場合、後者がプロバイダーの IVsDataProviderDynamicSupport 通常の実装によって制御される場合は (たとえば、Express Edition のあるユーザーが使用する) 制御されます。

多数の操作は、より大きなコンテキスト内に発生します。次の例では特定の接続コンテキストで発生する、接続の開いているコマンドです。IsOperationSupported の context のパラメーターが渡されます、操作がサポートされているかどうかの判断の一部として使用される認識可能なオブジェクトを有効にします。

Visual Studio のエディションが操作をサポートするかどうかを確認してIsOperationSupported の開始。Visual Studio が操作をサポートする場合、およびプロバイダーを IVsDataProviderDynamicSupport の実装を提供する場合は、メソッドが操作がサポートされているかどうかを判定するために、プロバイダーを問い合わせます。

既定では、Visual Studio のエディションにすべてのコマンドをサポートし、SELECT コマンドのセットを特定の状況で除外することに注意してください。これは、カスタム プロバイダー操作が Visual Studio のエディションでサポートされており、プロバイダーによって制御されることを意味します。

次のコードは、プロバイダーが特定のデータのエクスプローラーのノードの削除をサポートするかどうかを判定するためにこのメソッドを呼び出す方法を示します。そうでない場合は、適切なメッセージを決定するために記述する場合は GetUnsupportedReason のメソッドを呼び出して操作がサポートされている理由。

C#

using System;
using System.Windows.Forms;
using System.ComponentModel.Design;
using Microsoft.VisualStudio.Data.Core;
using Microsoft.VisualStudio.Data.Services;

public class DDEX_IVsDataProviderExample8
{
    public static bool AllowDelete(IVsDataProvider provider,
        IVsDataExplorerNode node)
    {
        if (!provider.IsOperationSupported(StandardCommands.Delete, node))
        {
            MessageBox.Show(provider.GetUnsupportedReason(
                StandardCommands.Delete, node));
            return false;
        }
        return true;
    }
}

.NET Framework セキュリティ

  • 直前の呼び出し元に対する完全な信頼。このメンバーは、部分的に信頼されているコードから使用することはできません。詳細については、「部分信頼コードからのライブラリの使用」を参照してください。

参照

関連項目

IVsDataProvider インターフェイス

IsOperationSupported オーバーロード

Microsoft.VisualStudio.Data.Core 名前空間