我有winform托管WPF控件文本块,其中文本块的内容是动态的。我想根据内容设置文本块的高度。表示文本块托管在windows usercontrol(TitleBarHost)中,而这个windows控件在运行时动态添加到另一个winform中。下面是动态添加控件的代码段。
Control titleBar = new TitleBarHost(titleInfo);
(titleBar as ICustomUI).Initialize(_application, extraData);
panelHeader.Controls.Add(titleBar);
titleBar.Dock = DockStyle.Top;
TitleBarView.xaml
<Grid>
<TextBlock x:Name="txtTitleBar" Text="{Binding Text}" Style="{StaticResource TextBlockStyle}"/>
</Grid>
TitleBarHost.cs
public void Initialize(object application, object configurationData)
{
m_Model = new TitleBarModel(this.titleInfo, application, configurationData);
m_ViewModel = new TitleBarViewModel(m_Model);
m_View = new TitleBarView { DataContext = m_ViewModel };
if (m_ViewModel != null)
{
m_View.FormatString(m_ViewModel.Text);
}
elementHost1.Child = m_View;
}
我需要根据内容设置文本块高度动态。我试图使用文本块的ActualHeight道具,但不起作用。也尝试使用高度自动,不起作用!