.NET User controls in VB6

As a company we would like to move all of our code to C#, but we share development with a third party who wants to stay at VB6. We currently supply them with a number of VB6 OCX controls which they embed in their applications. We would like to build C# controls but wrap them in a way such that they can continue to use them as OCXs.

I have experimented with the toolkit and been able to popup C# forms from within VB6 but this model and UI experience would be an unacceptable change to the users. I have searched around and come up with the following but none are great.

1. Create Web control inside an ASP.NET page and display it using the internet browser control in VB6.

2. Popup a frameless C# form and attempt to position and move it inline with the parent, yak!!

3. Create UI for the OCX in VB6 but delegate all functionality to a .NET library wrapped so the OCX can call it.

Any other ideas ?
Tanglesoft

[927 byte] By [Tanglesoft] at [2008-2-22]