For reference, I am including Horizontal alignment question which is even referenced in the comments of our legacy codebase.
The code is in a .xaml file, the relevant part is:
<MenuItem Header="Help" HorizontalAlignment="Right">
<MenuItem Header="About"></MenuItem>
</MenuItem>
This code builds. However, when debugging the code, what I see is
I would like to correct this, so that one can see the entire word "Help".
Is there an offset-mechanism in the WPF XAML file or some other way to do this?
NOTE: I have found my own 'hack' that seems to fix the problem, simply adding spaces after Help within the quote-marks works and makes it display better, but surely there must be a more elegant way:
<MenuItem Header ="Help " HorizontalAlignment="Right">
<MenuItem Header="About" CommandParameter="Help_About"></MenuItem>
</MenuItem>
Per request, this is the entire context of the menu, some of the items have been obfuscated since they may be proprietary:
<Menu xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
Name="appFrameworkMainMenu"
Grid.Row="0">
<Menu.ItemsPanel>
<ItemsPanelTemplate>
<DockPanel HorizontalAlignment="Stretch"/>
</ItemsPanelTemplate>
</Menu.ItemsPanel>
<MenuItem Name="Name1" Header="File">
<MenuItem Header="MenuItem1a" ></MenuItem>
<Separator />
<MenuItem Header="Exit Application" ></MenuItem>
</MenuItem>
<MenuItem Name="Name2" Header="File">
<MenuItem Header="MenuItem2a" ></MenuItem>
<MenuItem Header="MenuItem2b" ></MenuItem>
</MenuItem>
<MenuItem Name="Name3" Header="File">
<MenuItem Header="MenuItem3a" ></MenuItem>
<MenuItem Header="MenuItem3b" ></MenuItem>
</MenuItem>
<!-- align right: http://stackoverflow.com/questions/3023638/how-do-i-right-align-the-help-menu-item-in-wpf -->
<MenuItem Header ="Help " HorizontalAlignment="Right" >
<MenuItem Header="About" ></MenuItem>
</MenuItem>
</Menu>
Then, per comment suggestion, I tried a simple text block and it appears to be on the left, whether or not the HorizontalAligment = "Right" directive is in the code:
<TextBlock HorizontalAlignment="Right" >Help me </TextBlock>