[Okta Webinar] Learn how to a build a cloud-first strategyRegister Now

  • Status: Solved
  • Priority: Medium
  • Security: Public
  • Views: 605
  • Last Modified:

How to create a propertysheet contains CDHtmlDialog pages ?

Hi All,

I want to create a dialogbased application. Which starts a property sheet. I want all the pages of propertysheet must derived from CDHtmlDialog.

Is there any body suggest me how to do this?

  • 2
  • 2
1 Solution
You can add CDHtmlDialog member to every CPropertyPage and create it as child dialog. In CPropertyPage WM_SIZE handler resize CDHtmlDialog to full client size.
However, before starting with CDHtmlDialog I suggest you to read this:

After reading these notes I decided not to use CDHtmlDialog class - just for information.

Another note points to class which solves these problems: http://www.codeproject.com/dotnet/dhtmldialog.asp#xx959825xx. I hope that this solution works.

davinder101Author Commented:
Hi Alex,

Could you please explain in little bit more detail. Actually I  created  CMyPropPage which is derived from CPropertypage and  taking a member variable CmyDhtml which is derived from CDhtmlDialog.

Now my page is coming upto next, back butoons. My requirement is page should completelly overlap the page.

Is it possible ?

In CMyPropPage::OnCreate call Create function of CmyDhtml, with parent "this". Using MoveWindow set child dialog rectangle to CMyPropPage client rectangle. Show child dialog.
In CMyPropPage::OnSize resize child dialog according to client rectange.
To prevent flickering override CMyPropPage::OnEraseBkgnd ant return TRUE without calling to base class function.
davinder101Author Commented:
Hi Alex

Already I have tried these. These are not working. I did it by overriding OnEraseBkColor of MyProperySheet calss.

Thanks man your first idea help me alot.

Featured Post

Free Tool: Site Down Detector

Helpful to verify reports of your own downtime, or to double check a downed website you are trying to access.

One of a set of tools we are providing to everyone as a way of saying thank you for being a part of the community.

  • 2
  • 2
Tackle projects and never again get stuck behind a technical roadblock.
Join Now