1

我正在尝试Frame在执行异步任务后设置 a 的可见性。

bool condition = await DoWorkAsync();

if (condition)
{
   Dispatcher.Dispatch(() =>
   {
       myFrame.IsVisible = true;
   });
}

当我运行我的应用程序时,调试器告诉我调度程序正在调用我的代码,但应用程序窗口没有显示 Frame。(框架仍然隐藏)。

如果我调整应用程序窗口的大小,或以其他方式使其“无效”,那么我的框架将变得可见。

有没有办法在 Maui Windows 应用程序中强制无效?

如果没有,我是否应该通过其他方式从我的代码后面设置框架的可见性?

4

1 回答 1

1

添加调用InvalidateMeasure()似乎已经强制更新。

bool condition = await DoWorkAsync();

if (condition)
{
   Dispatcher.Dispatch(() =>
   {
       myFrame.IsVisible = true;
       this.InvalidateMeasure();
   });
}
于 2022-02-18T23:16:24.063 回答