Wpf Windows窗体第一次显示为白色

Wpf Windows窗体第一次显示为白色,wpf,activex,windowsformshost,Wpf,Activex,Windowsformshost,我有一个WPF窗口,它基本上占据了整个空间: <WindowsFormsHost Grid.RowSpan="2" Name="wfh" VerticalAlignment="Stretch" Width="Auto" Height="Auto" Cursor="IBeam" ForceCursor="True" SnapsToDevicePixels="True" > <ax:AxViewerActiveX x:Name="_axViewer" AutoSize="T

我有一个WPF窗口,它基本上占据了整个空间:

<WindowsFormsHost Grid.RowSpan="2" Name="wfh" VerticalAlignment="Stretch" Width="Auto" Height="Auto" Cursor="IBeam" ForceCursor="True" SnapsToDevicePixels="True" >
    <ax:AxViewerActiveX x:Name="_axViewer" AutoSize="True"  Cursor="Cross" Margin="0,0,0,0" Padding="0,0,0,0" UseWaitCursor="True">
    </ax:AxViewerActiveX>
</WindowsFormsHost>
调用时,它很简单,如下所示:

w3d.WindowState = WindowState.Maximized;
w3d.ShowDialog();

是否尝试将ActiveX控件的初始化放在.Loaded()方法中


请与ActiveX控件的所有者联系以获取支持。您可以显示一些代码隐藏吗?@HansPassant:我们是ActiveX控件的所有者。如果您只需执行
显示
,怎么样?只是想知道当调用
ShowDialog
时,队列中是否有一些滞后的异步消息。如果控件在
Show
中正确呈现,则问题在于ActiveX控件。它没有解决。无论如何,谢谢你!似乎问题出在ActiveX控件的背景绘制问题上。
w3d.WindowState = WindowState.Maximized;
w3d.ShowDialog();
this.InitializeComponent();
Loaded += delegate {
    _axViewer.BeginInit();
    _axViewer.EndInit();

    Focus();
    _axViewer.Focus();
};