使用Viewbox控件控制,視框被設計爲填充可用空間,無論大小都可以調整按鈕內容。
1日法
<Button Content="Long Text Long Text Long Text Long Text Long Text Long Text" Foreground="Red" Height="30">
<Button.ContentTemplate>
<DataTemplate>
<Viewbox >
<TextBlock Margin="5,0,5,0" Text="{Binding Path=Content,RelativeSource={RelativeSource AncestorType={x:Type Button}}}" ></TextBlock>
</Viewbox>
</DataTemplate>
</Button.ContentTemplate>
</Button>
注:你可以存儲這個DataTemplate中的資源也使用X:鍵,然後分配給按鈕<Button ContentTemplate={StaticResource DatatemplateKeyname}/>
第2種方法
<Button Height="30" Width="200" Foreground="Red">
<Button.Content>
<Viewbox>
<TextBlock Margin="5,0,5,0" Text="Long Text Long Text Long Text Long Text Long Text Long Text" ></TextBlock>
</Viewbox>
</Button.Content>
</Button>
注: 您可以使用標籤屬性這裏存儲的內容,然後綁定在視框中到文本塊TextBlock Text="{Binding Path=Tag,RelativeSource={RelativeSource AncestorType={x:Type Button}}}"
3方法
<!--Here Width is store in Button "Tag" property.-->
<Viewbox Height="30" Width="{Binding ElementName=Buttonname,Path=Tag}">
<Button x:Name="Buttonname" Content="Long Text Long Text Long Text Long Text Long Text Long Text Long Text Long Text Long Text Long Text Long Text Long Text" Tag="200" Foreground="Red"/>
</Viewbox>