请问一个关于CMFCPropertyGridCtrl的有关问题

请教一个关于CMFCPropertyGridCtrl的问题
最近做项目,新用到CMFCPropertyGridCtrl,对于CMFCPropertyGridCtrl的初始化问题百思不得其解。
对于同样的代码,
CMFCPropertyGridProperty * pProp1 = new CMFCPropertyGridProperty( 
_T("天朝适合生存吗?"),  
_T("51CTO不谈政治"),  
_T("这是描述部分"));
m_property.AddProperty(pProp1); //CMFCPropertyGridCtrl  m_property;

当我在OnInitialUpdate里面使用的时候,就能够正常的添加进去,但是如果自己写一个函数,再在其中调用这段代码,就会报错,错误在CMFCPropertyGridCtrl::AddProperty -> ASSERT_VALID(pProp) ->if (!AfxIsValidAddress(pOb, pOb->GetRuntimeClass()->m_nObjectSize, FALSE))这一句,不知道为什么

我的目的是,在SDI的view中有三个不同的控件,点击每一个控件,都会初始化不同的CMFCPropertyGridCtrl  属性,比如如果是Edit控件,那么就初始化字体等,如果是一个图形控件,就初始化存储该图片的路径。
------解决方案--------------------
你自己写的函数  代码贴上来
------解决方案--------------------
你自己写的函数是什么函数? 窗口已经初始化了吗?