55

MenuItemHeaderテキストがメニュー項目画像の下に配置されるようにMenuItem.Iconを定義する方法?助けてくれてありがとう!

4

3 に答える 3

165

の線に沿ってどのように何か:

<ContextMenu>
    <MenuItem Header="Reports">
        <MenuItem.Icon>
            <Image Source="/XSoftArt.WPFengine;component/Images/export32x32xp.png"/>
        </MenuItem.Icon>
    </MenuItem>
</ContextMenu>
于 2010-06-02T16:34:49.300 に答える
53

簡単な方法は、Iconプロパティを使用せず、代わりにヘッダーにアイコンを配置することです。

<Menu>
  <MenuItem>
    <MenuItem.Header>
      <StackPanel>
        <Image Width="20" Height="20" Source="/XSoftArt.WPFengine;component/Images/export32x32xp.png" />
        <ContentPresenter Content="Reports" />
      </StackPanel>
    </MenuItem.Header>
  </MenuItem>
  <MenuItem Header="Export" />
  <MenuItem Header="New record" />
</Menu>

この単純なケースでは、ContentPresenterが文字列を表示するために使用するので、<ContentPresenter Content="Reports" />をaに置き換えることができます。<TextBlock Text="Reports" />より複雑なHeader=場合は、次のように使用できますContentPresenter

于 2009-11-19T14:48:12.630 に答える
4

StackPanelの場合は、TextBlockではなくLabelを使用します。これは、 Labelのみが_Reportsのようにメニューにニーモニックを含めることができるためです。

于 2010-07-28T08:02:53.810 に答える