VSTO WPF Outlook插件 - 调整大小后刷新包含WPF内容的ElementHost时出现问题

Gre*_*ban 8 wpf vsto add-in

我有一个outlook addin,它在Outlook Explorer的右侧添加了一个自定义任务窗格.在任务窗格中,我添加了一个包含ElementHost的UserControl.ElementHost具有一个带有许多WPF元素的WPF UserControl作为Child.

插件工作得很好,除非我调整自定义任务窗格以减小其大小,控件的内容通常不会正确重新绘制.相反,我在自定义任务窗格上获得了白色矩形.在附图中可以看到这方面的一个例子.对我来说真正奇怪的是,矩形的位置不仅限于ElementHost的内容,而是任务窗格的整个内容 - 您可以看到顶部矩形覆盖了任务窗格标题栏的下半部分.

什么可能导致问题以及如何解决问题?

谢谢,

格雷戈尔

在此输入图像描述

alm*_*ulo 0

似乎正确的解决方案是禁用 WPF 控件的硬件加速。

private void UserControl_Loaded(object sender, RoutedEventArgs e) 
{ 
    HwndSource hwndSource = PresentationSource.FromVisual(this) as HwndSource; 
    HwndTarget hwndTarget = hwndSource.CompositionTarget; 
    hwndTarget.RenderMode = RenderMode.SoftwareOnly; 
} 
Run Code Online (Sandbox Code Playgroud)

摘自这里:https://www.add-in-express.com/forum/read.php?FID= 5&TID=8618