右对齐InputGestureText和menuitem

时间:2012-01-05 06:06:39

标签: c# wpf menuitem

您是否知道如何对菜单项InputGestureText进行右对齐? 我的菜单的InputGestureText将始终显示为左对齐,如下所示:

  

文件
  新...............按Ctrl + N
  打开.............按Ctrl + O
  选项......... Alt + Enter键
  出口................ X

我要做的就是像这样显示:

  

文件
  新.......................按Ctrl + N
  打开....................按Ctrl + O
  选项............. Alt + Enter键
  出口............................... X

我尝试使用InputGestureText.PadLeft(),但我的font-family是成比例的,所以它仍然会导致

  

文件
  新............ Ctrl + N
  打开...........按Ctrl + O
  选项...... Alt + Enter键
  出口.................. X

我试图研究一些让它成为可能但却没有运气的方法。

2 个答案:

答案 0 :(得分:1)

您必须修改menu item的样式。 复制它应该就足够了,只需用名称更改元素上的对齐方式即可 InputGestureText,我们使用ContentPresenter而不是TextBlock,但两者都应该有用。

<ContentPresenter
  Grid.Column="2"
  Margin="16,0,6,0"
  x:Name="InputGestureText"
  Content="{TemplateBinding InputGestureText}"
  HorizontalAlignment="Right"
  VerticalAlignment="Center"/>

答案 1 :(得分:0)

您可以通过Style更改Template菜单项,以便该部分的容器将其内容与右侧对齐。