In some situations, it is beneficial to have a single class implement two interfaces. Tom Archer illustrates this technique and explains when you would want to use it.
Articles Written by Tom Archer - MSFT
Managed Extensions: Versioning Collection Classes
Versioning your collections is important when the data held by a collection can be modified while a client is enumerating that data. Tom Archer presents a versioning technique he's told Microsoft uses internally.
Managed Extensions: Sorting Your Collection Classes
Tom Archer illustrates step-by-step instructions for making your collection classes sortable by any of your class's members.
Managed Extensions: Adding Enumeration to Your Classes
The .NET Base Class Library defines interfaces that enable you to quickly and easily define your classes. Learn how to write client code that enumerates these interfaces in a type-safe and object-specific manner.
MFC and .NET: Handling .NET Events
Tom Archer explains how to work around the inherent problems associated with handling .NET events from a mixed mode (MFC/Managed Extensions) application.
Managed Extensions: Using Delegates and Events
Tom Archer presents a step-by-step tutorial on understanding and using .NET delegates and events from the C++ Managed Extensions.
