MFC 子窗口控件赋值 程序运行崩溃,该如何解决

MFC 子窗口控件赋值 程序运行崩溃
我的开发环境是VS 2005,做基于Dialog的MFC开发

我在主Dialog上面放置了一个Tab控件,在主Dialog的OnInitDialog()中插入了多个tab

这些tab的内容是工程中我新建的其他Dialog,每个Dialog有对应的类。

tab的切换用OnTcnSelchangeTab事件来响应,用Switch,case实现的各个Dialog的ShowWindow(true)或ShowWindow(false)

下面问题来了!!!!!

我在某个tab对应的Dialog中放置了IDC_MySTATIC控件,想用主Dialog上的一个按钮触发这个子Dialog上面的IDC_MySTATIC的值发生变化。我用了什么GetDlgItem,再SetDlgItemText;或者先得到子窗口指针pWnd,在pWnd->SetWindowText;又或者给IDC_MySTATIC一个value型变量,直接给他赋值....好多办法,都不能成功。程序运行出现Debug Error错误,或者那个STATIC什么反应都没有。

我看网上有好多人遇到这样的问题,怀疑原因可能是这个tab包含的子窗口还没有建立,所以不能操作上面的控件。

请各位大侠告诉我应该怎么样处理才是对的呢??

------解决方案--------------------
在主dialog类里调用子dialog变量,再通过子dialog的变量进行相关的操作

如m_dlgChild.m_value = xxx;如果绑定的是value值,记得UpdateData(FALSE)

也可以通过给子窗口发送消息子窗口再来响应来实现
------解决方案--------------------
不用看,肯定是窗体还没有生成,就对其所属的控件进行赋值,必然出错。