Меню может не закрыться с тенью - PullRequest
0 голосов
/ 22 апреля 2020

Среда

  • ОС: Windows10
  • Время выполнения:. NET Framework 4.5
  • Проект: приложение WPF

Исходный код

<Window
  x:Class="MenuItemTest.MainWindow"
  xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
  xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
  Title="MainWindow" Height="200" Width="200">
  <Menu IsMainMenu="False">
    <MenuItem Header="MenuItem">
      <MenuItem.Template>
        <ControlTemplate TargetType="MenuItem">
          <Grid>
            <Popup
              x:Name="PART_Popup"
              StaysOpen="True" AllowsTransparency="True"  PopupAnimation="Fade"
              IsOpen="{Binding IsSubmenuOpen, RelativeSource={RelativeSource TemplatedParent}}">
              <Border Margin="20" Background="White">
                <Border.Effect>
                  <DropShadowEffect BlurRadius="20" Color="Black" Direction="0" ShadowDepth="0"/>
                </Border.Effect>
                <StackPanel IsItemsHost="True"/>
              </Border>
            </Popup>
            <Border Padding="10" Background="White" BorderBrush="Blue" BorderThickness="2">
              <ContentPresenter ContentSource="Header"/>
            </Border>
          </Grid>
        </ControlTemplate>
      </MenuItem.Template>
      <MenuItem Header="MenuItem1"/>
      <MenuItem Header="MenuItem2"/>
      <MenuItem Header="MenuItem3"/>
    </MenuItem>
  </Menu>
</Window>

Процедура

  1. Нажмите «MenuItem»
  2. Откроется меню.
  3. Нажмите «MenuItem», перекрывающийся с тенью .

Ожидаемый результат

Меню всегда закрывается.

Фактический результат

Меню может не закрыться.

Вопрос

Как я могу игнорировать эффекты теней?

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...