C# 在窗口处于非活动状态时刷新Office Ribbon UI

C# 在窗口处于非活动状态时刷新Office Ribbon UI,c#,ms-office,ribbon,C#,Ms Office,Ribbon,我正在做一个Office Ribbon项目。(PowerPoint) 它上面的标签正在由计时器定期更新。(显示当前与服务器的连接数) 当PowerPoint窗口处于焦点时,标签将正确更新。但是,当窗口处于非活动状态时,更新将挂起。(它们仅在PowerPoint窗口接收焦点后显示) 这是多显示器设置的问题,或者将PowerPoint捕捉到屏幕的一半时,我们需要显示正确的数据 我知道这背后的想法是降低CPU负载,但我想覆盖该行为 我尝试了Invalidate、PerformLayout和类似的方法,

我正在做一个Office Ribbon项目。(PowerPoint)

它上面的标签正在由计时器定期更新。(显示当前与服务器的连接数)

当PowerPoint窗口处于焦点时,标签将正确更新。但是,当窗口处于非活动状态时,更新将挂起。(它们仅在PowerPoint窗口接收焦点后显示)

这是多显示器设置的问题,或者将PowerPoint捕捉到屏幕的一半时,我们需要显示正确的数据

我知道这背后的想法是降低CPU负载,但我想覆盖该行为


我尝试了Invalidate、PerformLayout和类似的方法,但无法刷新功能区。有什么办法可以做到这一点吗?

没有。无法在所有窗口中更新Fluent UI。当窗口处于活动状态时调用回调

你可以考虑为这样的需求创造。在这种情况下,您将能够单独控制每个实例,并在运行时更新UI。您可能会发现以下文章很有帮助: