Вы можете полностью заменить шаблон.
Я бы предпочел привязать текст текстового блока к свойству в модели представления лично.
Это может помочь вам начать.
Поместите это в область таблицы данных, как в ресурсах вашего окна или в словаре ресурсов, объединенном в app.xaml.
<Style x:Key="{ComponentResourceKey ResourceId=DataGridSelectAllButtonStyle, TypeInTargetAssembly={x:Type DataGrid}}" TargetType="{x:Type Button}">
<Setter Property="Template">
<Setter.Value>
<ControlTemplate TargetType="{x:Type Button}">
<Border Background="Red">
<TextBlock Text="X" Foreground="White"/>
</Border>
</ControlTemplate>
</Setter.Value>
</Setter>
</Style>
Требуется больше работы, но он обнаруживается на образце сетки данных, который у меня есть.
(Это то, что имеет десятки стилей из экспериментов, отвечающих на вопросы в других местах).