Though this is for .Net 4.0, .NET Multi-Select TreeView is open source and works well with shift and ctrl modifier keys. It's a C# class that inherits Windows.Forms.TreeView.