プロパティ名が一致していなくてもテンプレートバインディングを使用することができます。
ソースコード
App.xaml
<Application x:Class="HelloWorld.App" xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation" xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml" StartupUri="MainWindow.xaml"> </Application>
MainWindow.xaml
<Window x:Class="HelloWorld.MainWindow" xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation" xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml" Title="MainWindow" Height="350" Width="525"> <!-- ボタンのContentを変更すると、TempalteのTextBlockのTextが連動して変わる --> <Button Width="80" Height="30" Content="Button"> <Button.Template> <ControlTemplate TargetType="{x:Type Button}"> <Border BorderBrush="Black" BorderThickness="3"> <TextBlock Text="{TemplateBinding Property=Content}" Foreground="Blue" HorizontalAlignment="Center" VerticalAlignment="Center"/> </Border> </ControlTemplate> </Button.Template> </Button> </Window>