防止父母被孩子调整大小

fre*_*uin 5 wpf layout

是否有可能阻止文本块调整其父级的大小?我有一个包含大量文本的文本块,我希望它包装,但不是为了扩大父母的大小.父级的大小可以是变量.问候托马斯

Fre*_*lad 6

很遗憾,此功能没有属性.

我所知道的唯一的解决方法是使用现有的控制或将另一个隐藏控制在同一个空间,然后绑定Width你的TextBlock/TextBoxActualWidth该控件的.

这是一个例子,当TextBlock它不影响Width,ColumnDefinition但如果由于ColumnDefinition其他原因调整大小,它会变得更宽

<Grid>
    <Grid.ColumnDefinitions>
        <ColumnDefinition Width="Auto"/>
        <ColumnDefinition Width="Auto"/>
    </Grid.ColumnDefinitions>
    <TextBlock Grid.Column="1"
               TextWrapping="Wrap"
               Text="{Binding ...}"
               Width="{Binding ElementName=sizingControl, Path=ActualWidth}"/>
    <Rectangle Name="sizingControl" Grid.Column="1" Visibility="Hidden" />
</Grid>
Run Code Online (Sandbox Code Playgroud)