Here's what I am aiming to do. I have created a VSPackage that works with special commands/menus etc for users' C# projects (subtyped from C# project types). These projects are in a single solution. There are 5 such projects in that solution. All the projects perform different aspects of a single module. So they are separated in projects as per their functionality. Now the C# files are named as per the screen names in all the 5 projects. So a file called ProfileEdit.cs will have the same name in all the 5 different projects. When a user is working on ProfileEdit, he might have all the 5 ProfileEdit.cs open in the editor. There needs to be a visual usable way for the user to distinguish which open file belongs to which C# project. We do not want to change the name of the file with a prefix or a suffix. We only need to a visual clue of the opened cluster of files in the editor about their belonging to type of project. One suggestion is the tabs on the top of the editor to have different background colors depicting those 5 projects - 5 different background colors. So users can quickly open any of these and work with them simultaneously faster. Please advice on how this can be achieved programmatically in VSI. Any pointers are appreciated.