Výměna dat
Stejně jako u většiny dialogových oken, výměny dat mezi seznam vlastností a použití je jedním z nejdůležitějších funkcí listu vlastností.Tento článek popisuje, jak toho dosáhnout.
Výměna dat s vlastností je skutečně věc výměny dat pomocí stránky vlastností jednotlivých vlastností.Postup pro výměnu dat s stránka vlastností je stejné jako pro výměnu dat s dialogovým oknem, protože CPropertyPage objekt je pouze specializované CDialog objektu.Postup využívá v rámci dialog data exchange (DDX) zařízení, které výměny dat mezi ovládací prvky v dialogovém okně pole a členské proměnné objektu dialogové okno pole.
Důležitý rozdíl mezi výměna dat s vlastností a běžné dialogové okno je, že seznam vlastností obsahuje více stránek, tak se musí vyměňovat data s všechny stránky v seznamu vlastností.Další informace o DDX naleznete v tématu Dialog Data Exchange a ověření.
Následující příklad ukazuje mezi dvě stránky vlastností a výměnou dat:
void CMyView::DoModalPropertySheet()
{
CPropertySheet propsheet;
CMyFirstPage pageFirst; // derived from CPropertyPage
CMySecondPage pageSecond; // derived from CPropertyPage
// Move member data from the view (or from the currently
// selected object in the view, for example).
pageFirst.m_nMember1 = m_nMember1;
pageFirst.m_nMember2 = m_nMember2;
pageSecond.m_strMember3 = m_strMember3;
pageSecond.m_strMember4 = m_strMember4;
propsheet.AddPage(&pageFirst);
propsheet.AddPage(&pageSecond);
if (propsheet.DoModal() == IDOK)
{
m_nMember1 = pageFirst.m_nMember1;
m_nMember2 = pageFirst.m_nMember2;
m_strMember3 = pageSecond.m_strMember3;
m_strMember4 = pageSecond.m_strMember4;
GetDocument()->SetModifiedFlag();
GetDocument()->UpdateAllViews(NULL);
}
}