第一种方式MFC中有一篇专门的文章介绍了它,先把它列出来:
在大多数对话框中,属性表(CPropertySheet)和应用程序之间的数据交互是属性表最重要的功能之一。这篇文章介绍了怎样实现这个任务。
和属性表交互数据实际上是和属性表中的属性页(CPropertyPage)交互数据,和属性页交互数据的过程和和对话框交互数据的过程是一样的,因为一个CPropertyPage对象是一种特殊的CDialog对象。数据交互过程也使用了框架的DDX(Dialog Data Exchange)机制,这种机制实现了在对话框中的控件和对话框的成员变量中交互数据。
和属性表交互数据与和普通的对话框交互数据有一个很大的不同点是属性表经常会含有多个属性页,因此你必须和属性表中的所有属性页交互数据。
下面的例子显示了如何在一个CView对象和含有两个属性页的属性表中交互数据:
void CMyView::DoModalPropertySheet()
{
CPropertySheet propsheet;
CMyFirstPage pageFirst; // derived from CProperty