0

我有一些显示对象列表的 contextMenu。我的问题是当其中一个对象以下划线(“_”)开头时,例如:_obj1,结果是mentitem 显示时没有下划线:obj1”。

任何想法?

4

2 回答 2

1

我通过更改标题模板来修复它。

<Style TargetType="{x:Type MenuItem}">
     <Setter Property="HeaderTemplate">
          <Setter.Value>
               <DataTemplate>
                    <TextBlock Text="{Binding Header, RelativeSource= {RelativeSource Mode=FindAncestor,    AncestorType={x:Type MenuItem}}}" />
               </DataTemplate>
          </Setter.Value>
     </Setter>
</Style>
于 2013-08-15T07:30:19.743 回答
0

我认为您在使用下划线开始名称时可能会错过 wpf 提供的功能。

使用 _obj1 时,菜单时间显示为 obj1,但您应该尝试按 ALT,然后您将看到 obj1“下划线”,您可以使用 ALT+o(obj 名称的第一个字符)“按”菜单项不使用鼠标。

例如,当您编写此代码时:

<MenuItem Header="_File">
    <MenuItem .../>
</MenuItem>

然后您只会看到带有“文件”的菜单,但您可以在单击此菜单项时使用 ALT+F。试试这个,你就会明白。

于 2013-12-03T02:45:31.807 回答