当我输入多行文本时,Wpf文本块宽度会发生变化

时间:2014-10-16 10:55:26

标签: c# wpf scale textblock

您好我试图让按钮上的文字使用所有可用空间并保持可扩展性。

这是我目前的代码

<Button x:Name="ButtonTest" Grid.Column="5" Margin="5" Style="{DynamicResource FunctionButton}">
    <Button.Content>
        <Viewbox x:Name="ViewTest">
            <TextBlock Width="{Binding Path=ActualWidth, ElementName=ButtonTest}" 
                       TextWrapping="Wrap"  Text="Test test test test test test test test test test test test test test test test test test test"></TextBlock>
        </Viewbox>
    </Button.Content>
</Button>

使用我的代码,如果我输入足够的文本以使多行宽度减小。

enter image description here

我可以手动设置文本块的宽度并生成它。所以当我输入多行时,为什么绑定不起作用。

enter image description here

使用的样式

<Style x:Key="FunctionButtonBase" TargetType="{x:Type Button}">
    <Setter Property="FontWeight" Value="SemiBold"></Setter>
    <Setter Property="FontSize" Value="15"></Setter>
    <Setter Property="Foreground" Value="{DynamicResource NormalFontBrush}"></Setter>
</Style>

<Style x:Key="FunctionButton" TargetType="{x:Type Button}" BasedOn="{StaticResource FunctionButtonBase}">
    <Setter Property="Background" Value="{DynamicResource NormalButtonBrush}"></Setter>
</Style>

0 个答案:

没有答案