Предоставленный ответ верен, если вы планируете применить его к одной кнопке, но реальный вопрос, если вы хотите использовать один и тот же шаблон для нескольких кнопок, это будет проблемой.Для этого, пожалуйста, следуйте приведенному ниже методу
Сначала создайте новый словарь ресурсов с именем "Style.xaml" (имя примера) и добавьте в него следующие стили
<ResourceDictionary xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
xmlns:local="clr-namespace:SampleCodeWorkSpace">
<Style TargetType="Button" x:Key="EllipseButton">
<Setter Property="Template">
<Setter.Value>
<ControlTemplate TargetType="Button">
<Grid>
<Ellipse Fill="{TemplateBinding Background}"/>
<ContentPresenter HorizontalAlignment="Center" VerticalAlignment="Center">
</ContentPresenter>
</Grid>
</ControlTemplate>
</Setter.Value>
</Setter>
</Style>
<Style TargetType="Button" x:Key="RoundedButton">
<Setter Property="Template">
<Setter.Value>
<ControlTemplate TargetType="Button">
<Border CornerRadius="8" Background="{TemplateBinding Background}" BorderBrush="{TemplateBinding BorderBrush}"
BorderThickness="1">
<ContentPresenter HorizontalAlignment="Center" VerticalAlignment="Center">
</ContentPresenter>
</Border>
</ControlTemplate>
</Setter.Value>
</Setter>
</Style>
Добавьте ссылку на словарь ресурсов в App.xaml
<Application x:Class="SampleCodeWorkSpace.App"
xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
xmlns:local="clr-namespace:SampleCodeWorkSpace"
StartupUri="MainWindow.xaml">
<Application.Resources>
<ResourceDictionary Source="Styles.xaml"></ResourceDictionary>
</Application.Resources>
Добавьте стиль к необходимой кнопке в показанном ниже способе показа
<Button Content="Button" Foreground="Black" HorizontalAlignment="Left" VerticalAlignment="Top" Width="328" Height="188" Click="Button_Click" Style="{StaticResource EllipseButton}" />