Search code examples
wpfribbon

How can I center the title of a WPF RibbonWindow?


I want to center the title of my RibbonWindow, and not have it aligned on the side.

This thread said it had an answer: Center WPF RibbonWindow Title via XAML Code

but it didn't work.

Bellow is an image and the corresponding code.

title not centered

    <RibbonWindow x:Class="Window1"
        xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
        xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
        Title="Window1" Height="300" Width="300">
    <Grid>
        <Ribbon>
            <Ribbon.TitleTemplate>
            <DataTemplate>
                <TextBlock TextAlignment="Center" HorizontalAlignment="Stretch" Width="{Binding ElementName=Window, Path=ActualWidth}">ApplicationTitle
                    <TextBlock.Effect>
                        <DropShadowEffect ShadowDepth="0" Color="MintCream " BlurRadius="10"   />
                    </TextBlock.Effect>
                </TextBlock>
            </DataTemplate>
            </Ribbon.TitleTemplate>
        </Ribbon>
    </Grid>
    </RibbonWindow>

I am using VS 2012, with .NET 4.5 and the included System.Windows.Controls.Ribbon assembly.


Solution

  • The ElementName in the binding (Width="{Binding ElementName=Window, Path=ActualWidth}") needs to match the name of the RibbonWindow. So, in this case you need "Window" for the name:

    <RibbonWindow x:Class="Window1" x:Name="Window"
        ... />