Equality(Delegate, Delegate) Operator
Determines whether the specified delegates are equal.
public: static bool operator ==(Delegate ^ d1, Delegate ^ d2);
public static bool operator == (Delegate d1, Delegate d2);
static member ( = ) : Delegate * Delegate -> bool
Public Shared Operator == (d1 As Delegate, d2 As Delegate) As Boolean
The first delegate to compare.
The second delegate to compare.
d1 is equal to
Two delegates of the same type with the same targets, methods, and invocation lists are considered equal.
If the two delegates are not of the same type, they are not considered equal.
In the .NET Framework version 1.0 and 1.1, two delegates were considered equal if their targets, methods, and invocation list were equal, even if the delegates were of different types.
The methods and targets are compared for equality as follows:
If the two methods being compared are both static and are the same method on the same class, the methods are considered equal and the targets are also considered equal.
If the two methods being compared are instance methods and are the same method on the same object, the methods are considered equal and the targets are also considered equal.
Otherwise, the methods are not considered to be equal and the targets are also not considered to be equal.
Two invocation lists are considered identical if they have the same order and the corresponding elements from the two lists represent the same method and target.
The equivalent method for this operator is Delegate.Equals(Object)
when invoked late-bound through mechanisms such as InvokeMember(String, BindingFlags, Binder, Object, Object, ParameterModifier, CultureInfo, String). Associated enumeration: MemberAccess