У меня есть приложение Win32 CPP, где я использую остров Xaml. У меня есть кнопка, и я зависаю от этой кнопки, запускает рамку Flyout. В основном логика в том, что когда рамка Flyout загружается в первый раз, я создаю новый FryoutFrame. И когда мы скрываем FryoutFrame на Lost Focus, я устанавливаю Fryout.content (nullptr) и Flyout.visible (false). Дерево UIA отлично работает в первый раз, но не освежает и показывает окно верхнего уровня как пустое. Вот пример кода: < /p>
void ShowFlyout()
{
if(flyout)
{
flyout = CreateFlyout();
flyout.Content(frame);
}
else
{
EnableWindow(reinterpret_cast(flyout.WindowId()), false);
flyout.Content(frame);
flyout.Visible(true);
}
}
void HideFlyout()
{
EnableWindow(reinterpret_cast(flyout.WindowId()), false);
flyout.Content(nullptr);
flyout.Visible(false);
}
< /code>
Код всегда работает, если я каждый раз звоню createflyout (). Но это ввело другие ошибки, которые не имеют отношения к этому обсуждению. Я попытался очистить сетку детей кадров вместо того, чтобы устанавливать Fryout.content (nullptr), но это также не имело значения. Я исчерпал все варианты, которые я мог найти.
Подробнее здесь: https://stackoverflow.com/questions/796 ... nter-hover