次の方法で共有


ReferencesEvents インターフェイス

更新 : 2007 年 11 月

プロジェクト参照の追加、削除、または変更によって発生するイベントにアクセスする手段を提供します。このオブジェクトを使用して機能を提供します。このオブジェクトのドキュメントについては、ReferencesEventsClass を参照してください。

名前空間 :  VSLangProj
アセンブリ :  VSLangProj (VSLangProj.dll 内)

構文

'宣言
<GuidAttribute("1CF40C9E-D548-4B45-AD0F-3D7843F62BBB")> _
Public Interface ReferencesEvents _
    Implements _ReferencesEvents, _dispReferencesEvents_Event
'使用
Dim instance As ReferencesEvents
[GuidAttribute("1CF40C9E-D548-4B45-AD0F-3D7843F62BBB")]
public interface ReferencesEvents : _ReferencesEvents, 
    _dispReferencesEvents_Event
[GuidAttribute(L"1CF40C9E-D548-4B45-AD0F-3D7843F62BBB")]
public interface class ReferencesEvents : _ReferencesEvents, 
    _dispReferencesEvents_Event
public interface ReferencesEvents extends _ReferencesEvents, _dispReferencesEvents_Event

解説

ReferencesEvents オブジェクトには、VSProject オブジェクトまたは DTE オブジェクトからアクセスできます。VSProject オブジェクトを使用して各プロジェクトの ReferencesEvents オブジェクトにアクセスすることにより、そのプロジェクトのイベントにアクセスできます。DTE オブジェクトの ReferencesEvents オブジェクトは、個々のプロジェクトのイベント、またはソリューション内のすべての Visual Basic プロジェクトのイベントにアクセスする場合に使用できます。

VSProject オブジェクトを使用して 1 つのプロジェクトのイベントにアクセスする場合は、「ReferencesEvents」を参照してください。

次の 2 つの例では、遅延バインディングによる VBReferencesEvents プロパティを使用して、Visual Basic プロジェクトのイベントにアクセスしています。Visual C# のイベントに接続する場合は、CSharpReferencesEvents を使用します。

イベントを処理するために 2 つの遅延バインディングによるメソッドを使用します。最初のメソッドは、特定のプロジェクトのイベントにアクセスするために使用され、コンパイル時に Option Strict Off ステートメントを必要とします。このメソッドは、VBReferencesEvents 呼び出しのパラメータが Project 型でない場合にエラーを返します。VBImportsEvents のパラメータは省略できます。省略すると、ソリューション内のすべての Visual Basic プロジェクトのイベントを受け取ります。

' Macro editor
Imports VSLangProj
Option Strict Off
Dim WithEvents refEvents As ReferencesEvents
Sub ConnectProjectRefEvents()
   ' Must have Option Strict Off
   Dim proj As Project = DTE.Solution.Projects.Item(1)
   refEvents = DTE.Events.VBReferencesEvents(proj)
End Sub

Public Sub refEvents_ReferenceAdded(ByVal pReference _
As VSLangProj.Reference) Handles refEvents.ReferenceAdded
   MsgBox(pReference.Name)
End Sub

もう 1 つの遅延バインディングによるメソッドは、ソリューション内のすべてのプロジェクトのイベントに対してイベント処理メソッドを追加するために使用されます。この方法では、特定のプロジェクトだけに対してイベントをフィルタすることはできません。Option Strict On でコンパイルされます。

' Macro editor
Imports VSLangProj
Dim WithEvents refEvents As ReferencesEvents
Sub ConnectAllRefEvents()
   refEvents = CType(DTE.Events.GetObject("VBReferencesEvents"), _
      ReferencesEvents)
End Sub

Public Sub refEvents_ReferenceAdded(ByVal pReference _
As VSLangProj.Reference) Handles refEvents.ReferenceAdded
   MsgBox(pReference.Name)
End Sub

参照

参照

ReferencesEvents メンバ

VSLangProj 名前空間