C# 如何设置WPF窗口';宽度是否等于其标题栏中的内容?

C# 如何设置WPF窗口';宽度是否等于其标题栏中的内容?,c#,.net,wpf,xaml,C#,.net,Wpf,Xaml,如果我在WPF中有如下窗口: <Window Title="Alter Window Width so that the complete title is shown." SizeToContent="WidthAndHeight" WindowStartupLocation="CenterOwner"> 此窗口将自动调整大小,以确保其所有内容都可见。但它对标题的作用不一样,因此当显示窗口时,标题的一部分可能会被隐藏 如何确保窗口的宽度足以在标题栏中显

如果我在WPF中有如下窗口:

<Window
    Title="Alter Window Width so that the complete title is shown."
    SizeToContent="WidthAndHeight"
    WindowStartupLocation="CenterOwner">

此窗口将自动调整大小,以确保其所有内容都可见。但它对标题的作用不一样,因此当显示窗口时,标题的一部分可能会被隐藏


如何确保窗口的宽度足以在标题栏中显示标题?

在窗口中添加隐藏的文本块:

<TextBlock 
   Text="{Binding Path=Title,RelativeSource={RelativeSource Mode=FindAncestor, AncestorType=Window}}" 
   Visibility="Hidden" 
   Height="0" 
   Margin="100 0 0 0">
</TextBlock>

边距允许将windows控件推开

高度使控件不占用垂直空间


由于高度为零,可能不需要可见性,但如果将其设置为“隐藏”,则会占用画布上的空间,但不会显示任何内容。

您的
标题是动态的吗?如果不是,为什么不给窗口指定一个
MinWidth
?+1作为答案,但这仍然不会显示完整的标题。20%的信息仍然隐藏着。这是因为标题栏除了标题文本之外还包含其他内容。最小化、最大化按钮等。增加100的边距值以适应它,或在窗口上关闭它们