Wrap a SDI/MDI app via an OCX?
Posted on 2001-09-08
I have seen articles on, and have successfully been able to wrap a modal dialog into an OCX, resulting in an OCX that has the full dialog functionality etc. This has enabled me to code a modal dialog control for use in a web page.
But is it possible to wrap an MDI/SDI app with an OCX? If so, how would this be done?
I can describe how the CDialog was wrapped by the OCX in hopes it may trigger some thoughts:
1) Create an OCX using the Visual Studio ActiveX control wizard.
2) Add a dialog to the ocx via the resource tab, then use the class wizard to generate the CDialog based class code.
3) Create a member variable within the OCX of the CDialog based class just created.
4) In the OCX's InitInstance, call CDialog::Create() on the member variable to create the dialog.
5) In the OCX's OnDraw, comment out the existing draw code and instead call the member variable's OnDraw.
This works great and I have used it often.
The issue here is that I want to create a more sophisticated UI, a splitter window similar to Windows Explorer with a tree view on the left, and a list view on the right, separated by a splitter.
Visual Studio App Wizard generates this in the form of an SDI/MDI app and it is this app I would like to wrap in the form of an OCX so that it could be used as a WEB control, or within another app as a dialog control etc.
I don't know if this is possible, but I am looking for clues as to how this could be done. I am willing to prototype and work with someone on this to get it working.