2012-03-30 18 views
92

WPF uygulamamdaki pencereler formundakiyle aynı bir menü çubuğu oluşturmak istiyorum.WPF'de bir menü çubuğu oluştur

Bunu nasıl yaparım?

WPF denetimleri araç kutusundaki menü seçeneği yalnızca boş bir çubuk verir.

cevap

172
<DockPanel> 
    <Menu DockPanel.Dock="Top"> 
     <MenuItem Header="_File"> 
      <MenuItem Header="_Open"/> 
      <MenuItem Header="_Close"/> 
      <MenuItem Header="_Save"/> 
     </MenuItem> 
    </Menu> 
    <StackPanel></StackPanel> 
</DockPanel> 
+3

Neden orada altını şunlardır: Sen (kendi projelerinden biri itibaren) gibi bir şey gerekir? Neden saklanıyorlar? – C4u

+13

@ C4u: Kısayol tuşlarını (örneğin, "dosya" için Alt + f) ayarladılar. –

38

Evet, bir menü çubuğu verir ama barda koymak için size herhangi ürün vermez.

<!-- Menu. --> 
<Menu Width="Auto" Height="20" Background="#FFA9D1F4" DockPanel.Dock="Top"> 
    <MenuItem Header="_Emulator"> 
    <MenuItem Header="Load..." Click="MenuItem_Click" /> 
    <MenuItem Header="Load again" Click="menuEmulLoadLast" /> 
    <Separator /> 
    <MenuItem Click="MenuItem_Click"> 
     <MenuItem.Header> 
      <DockPanel> 
       <TextBlock>Step</TextBlock> 
       <TextBlock Width="10"></TextBlock> 
       <TextBlock HorizontalAlignment="Right">F2</TextBlock> 
      </DockPanel> 
     </MenuItem.Header> 
    </MenuItem> 
    : 
+33

Merhaba, yuvalanmış DockPanel yerine, bunun yerine InputGestureText özniteliğini kullanabilirsiniz. Örneğin, ' ' – AlanFoster

+2

@AlanFoster ** Bu ipucu ** dahil, kendi yanıtınızı göndermelisiniz. Neredeyse onu özledim ve bu utanç verici! Kurulumu kabul edilen cevaptan yeniden kullanabilirsiniz. En basit olanı diyorum. Ve en iyi biçimlendirilmiş. –

6
<StackPanel VerticalAlignment="Top"> 
    <Menu Width="Auto" Height="20"> 
     <MenuItem Header="_File"> 
      <MenuItem x:Name="AppExit" Header="E_xit" HorizontalAlignment="Left" Width="140" Click="AppExit_Click"/> 
     </MenuItem> 
     <MenuItem Header="_Tools"> 
      <MenuItem x:Name="Options" Header="_Options" HorizontalAlignment="Left" Width="140"/> 
     </MenuItem> 
     <MenuItem Header="_Help"> 
      <MenuItem x:Name="About" Header="&amp;About" HorizontalAlignment="Left" Width="140"/> 
     </MenuItem> 
    </Menu> 
    <Label Content="Label"/> 
</StackPanel> 
1
<Container> 
    <Menu> 
     <MenuItem Header="File"> 
      <MenuItem Header="New"> 
       <MenuItem Header="File1"/> 
       <MenuItem Header="File2"/> 
       <MenuItem Header="File3"/> 
      </MenuItem> 
      <MenuItem Header="Open"/> 
      <MenuItem Header="Save"/> 
     </MenuItem> 
    </Menu> 
</Container> 
İlgili konular