MFC: CDialog от CPropertyPage
У меня есть CPropertySheet, которые содержат несколько CPropertyPage в качестве вкладок. В одном из CPropertyPage у меня есть кнопка, и нажатие на кнопку запускает CDialog. Я пытаюсь получить элемент управления для CPropertyPage, вызывая метод GetParent() внутри методов класса CDialog, но почему-то я не получаю правильное родительское окно, и когда я пытаюсь получить доступ к членам CPropertypage, оно выдает исключение нарушения прав доступа.
Ниже приведен код, который я использовал:
CDialog *parentDialog = (CDialog *)GetParent();
CPropertyPage *parentPage = (CPropertyPage *)parentDialog->GetParent();
DResourceStateMgr dSrcStateMgr(parentPage->m_psp.hInstance);
// throws Access Violation exception.
То же самое использовалось в Visual Studio 2008, но когда я перешел в Visual Studio 2013, это исключение.