From: JY on 12 Feb 2010 00:30 > **** > THis is always a mistake. You have done something seriously wrong. > > For example, in your OnInitDialog handler, do you call the superclass OnInitDialog > handler? Did you put a breakpoint at DoDataExchange to see if it is called? If > DoDataExchange is not being called, you have a coding error. This typically only happens > if you add handlers manually instead of using the automated mechanisms. > > Note that there are some annoying glithces, such as if you have a spin control with an > autobuddy with an OnEnChange handler; you will get calls to the handler before the spin > control variable is set. Since you have not given any context of where these happen, > there is no way to diagnose the problem. But you can consider that it is *always* a > mistake to create the controls yourself because you get this error, because what it really > means is you have done something wrong, something that is almost always totally trivial to > repair! > joe > **** I had added the member vairables using the Wizard as Stephen has mentioned, and of course it had entries in DoDataExchange(). Since I had the class derived from CPropertyPage instead of CDialog (again from the Wizard), the OnInitDialog() handler did not get automatically added and DoDataExchange() did not get called. I've added a handler for OnInitDialog() and called the base class OnInitHandler() so now it works fine. - JY |