如何知道放置在TabControl的TabItem中的WindowsFormsHost渲染大小?

时间:2016-01-05 06:57:13

标签: wpf wpf-controls

我开发其具有3级标签的物品一个TabControl和每个标签项目是由本申请的一个WindowsFromsHost.On启动的WindowsFromsHost.ActualHeight的和WindowsFromsHost.ActualWidths是来0如何获得呈现的大小WPF应用程序?

2 个答案:

答案 0 :(得分:0)

您可以使用TabItem的Loaded事件。在启动时太早,无法获得控件的大小。

ActualWidth和ActualHeight适用于渲染大小。

示例:

的Xaml:

<TabItem x:Name="aaa" Loaded="aaa_Loaded">

代码背后:

private void aaa_Loaded(object sender, RoutedEventArgs e)
{
  //get rendered size
}

答案 1 :(得分:0)

我可以使用以下代码

获得ActualWidth和Actual Height
_winFormHost.Dispatcher.BeginInvoke(DispatcherPriority.Background, new DispatcherOperationCallback(delegate(Object state)
                    {
                        _height = (int)_winFormHost.ActualHeight;
                        _width = (int)_winFormHost.ActualWidth;
                        return null;
                    }), null);