Обновление CPropertyPage на вкладке выбора
Я ищу лучший способ обновить CPropertyPage после его нажатия. В настоящее время мои страницы получают информацию во время OnInitDialog()
, Однако когда пользователь что-то делает на первой странице, это может повлиять на то, что находится на второй странице.
Единственное решение, которое я могу использовать, это кнопка "Обновить". После нажатия кнопки страница обновляет свою информацию, вызывая те же функции, которые выполняются во время OnInitDialog()
, Есть ли событие, которое происходит, когда пользователь нажимает на другую страницу CPropertyPage таблицы CPropertySheet?
1 ответ
Использование кнопки "Обновить" является плохим дизайном, поскольку требует от пользователя принудительного обновления. Вместо этого вы должны следить за состоянием значений, которые могут вызвать обновление. Это можно сделать в структуре или объекте класса, которые затем можно сделать доступными для CPropertyPage::OnSetActive страницы, для которой требуются обновленные значения. OnSetActive вызывается непосредственно перед тем, как страница станет активной. Это ваша возможность обновить значения на странице перед ее отображением.