Как сделать меню WPF похожим на Windows Forms ToolStripMenu? - PullRequest
9 голосов
/ 30 июня 2011

Я новичок в WPF.И под новым я подразумеваю, что я только начал это сегодня после получения .net 3.5.Я обычно занимаюсь разработкой графического интерфейса в Windows Forms и люблю классную ToolStripMenu.Но когда я увидел WPF Menu, оно было настолько уродливым, что напомнило мне о моих днях Win32 Api.Есть ли способ изменить стиль меню WPF, чтобы оно выглядело как меню Windows Forms?

Ответы [ 2 ]

6 голосов
/ 30 июня 2011

попробуйте это:

Введение в стиль и шаблоны: http://msdn.microsoft.com/en-us/library/ms745683.aspx

Новый стиль для панели инструментов http://msdn.microsoft.com/en-us/library/aa970772.aspx

Альтернативный поиск Стиль панели инструментов wpf

Edit: Да, но добавьте подобное меню, и панель инструментов изменяет стиль меню (вставьте в новый проект):

<Grid>
<Grid.RowDefinitions>
  <RowDefinition Height="Auto"></RowDefinition>
  <RowDefinition Height="*"></RowDefinition>
</Grid.RowDefinitions>
<ToolBarTray >
  <ToolBar >
  <Menu>
    <MenuItem Header="Hey">
      <MenuItem Header="lo"></MenuItem>
    </MenuItem>
    <MenuItem Header="Ho">
      <MenuItem Header="la"></MenuItem>
    </MenuItem>
  </Menu>
</ToolBar>
</ToolBarTray>

1 голос
/ 30 июня 2011

Меню, как и большинство элементов управления WPF, по умолчанию имеет очень мало стилей.

Но это по умолчанию, вы можете легко добавлять свои собственные стили и затмевать WinForms.

Просто маленький стартер:

    <Menu DockPanel.Dock="Top" >
        <Menu.Background>
            <LinearGradientBrush EndPoint="0,1" StartPoint="0,0">
                <GradientStop Color="White" Offset="0" />
                <GradientStop Color="Blue" Offset="1" />
            </LinearGradientBrush>
        </Menu.Background>
        <MenuItem Header="_File" >
...