Ich habe ein Menü, das Untermenü für einige Elemente enthält. Das erste Mal öffnet sich das Untermenü, wenn ich auf einen Menüpunkt klicke. Danach wird das nächste Untermenü ohne Mausklick geöffnet. Ich möchte nicht, dass andere Untermenüs ohne Klicken geöffnet werden.Warum wird das Untermenü automatisch in WPF MENU geöffnet?
<ControlTemplate x:Key="MenuItemControlTemplate1" TargetType="{x:Type MenuItem}">
<Border x:Name="templateRoot"
Background="{TemplateBinding Background}"
SnapsToDevicePixels="True" Margin="0,-7,0,5">
<Grid VerticalAlignment="Center">
<Grid.ColumnDefinitions>
<ColumnDefinition Width="Auto"/>
<ColumnDefinition Width="Auto"/>
</Grid.ColumnDefinitions>
<ContentPresenter x:Name="mainMenuHeaderContainer" Cursor="Hand" Margin="0,0,0,13" ContentTemplate="{TemplateBinding HeaderTemplate}" Content="{TemplateBinding Header}" Grid.Column="1" ContentStringFormat="{TemplateBinding HeaderStringFormat}" ContentSource="Header" RecognizesAccessKey="True" SnapsToDevicePixels="{TemplateBinding SnapsToDevicePixels}"/>
<Popup x:Name="PART_Popup" AllowsTransparency="True" Focusable="False" IsOpen="{Binding IsSubmenuOpen, RelativeSource={RelativeSource TemplatedParent}}" PopupAnimation="{DynamicResource {x:Static SystemParameters.MenuPopupAnimationKey}}" Placement="Bottom">
<Border x:Name="SubMenuBorder" BorderBrush="#595959" BorderThickness=".5,0,0,0" Background="#32a3cf">
<ScrollViewer x:Name="SubMenuScrollViewer" Style="{DynamicResource {ComponentResourceKey ResourceId=MenuScrollViewer, TypeInTargetAssembly={x:Type FrameworkElement}}}">
<Grid RenderOptions.ClearTypeHint="Enabled">
<Canvas HorizontalAlignment="Left" Height="0" VerticalAlignment="Top" Width="0">
<Rectangle x:Name="OpaqueRect" Fill="#666" Height="{Binding ActualHeight, ElementName=SubMenuBorder}" Width="{Binding ActualWidth, ElementName=SubMenuBorder}"/>
</Canvas>
<ItemsPresenter x:Name="ItemsPresenter"/>
</Grid>
</ScrollViewer>
</Border>
</Popup>
</Grid>
</Border>
<ControlTemplate.Triggers>
<Trigger Property="IsSuspendingPopupAnimation" Value="True">
<Setter Property="PopupAnimation" TargetName="PART_Popup" Value="None"/>
</Trigger>
<Trigger Property="IsHighlighted" Value="True">
<Setter Property="Background" TargetName="templateRoot" Value="#32a3cf"/>
</Trigger>
<Trigger Property="IsKeyboardFocusWithin" Value="True">
<Setter TargetName="templateRoot" Property="Background" Value="#32a3cf" />
</Trigger>
</ControlTemplate.Triggers>
</ControlTemplate>
<ControlTemplate x:Key="MenuItemControlTemplate2" TargetType="{x:Type MenuItem}">
<Border x:Name="templateRoot" BorderBrush="{TemplateBinding BorderBrush}" BorderThickness=".5,0,.5,.5" Background="{TemplateBinding Background}" SnapsToDevicePixels="True">
<Grid Margin="-1" Cursor="Hand">
<Grid.ColumnDefinitions>
<ColumnDefinition MinWidth="22" SharedSizeGroup="MenuItemIconColumnGroup" Width="Auto"/>
<ColumnDefinition Width="13"/>
<ColumnDefinition Width="*"/>
<ColumnDefinition Width="30"/>
<ColumnDefinition SharedSizeGroup="MenuItemIGTColumnGroup" Width="Auto"/>
<ColumnDefinition Width="20"/>
</Grid.ColumnDefinitions>
<ContentPresenter x:Name="menuHeaderContainer" ContentTemplate="{TemplateBinding HeaderTemplate}" Content="{TemplateBinding Header}" Grid.Column="2" ContentStringFormat="{TemplateBinding HeaderStringFormat}" ContentSource="Header" HorizontalAlignment="Left" Margin="{TemplateBinding Padding}" SnapsToDevicePixels="{TemplateBinding SnapsToDevicePixels}" VerticalAlignment="Center"/>
<TextBlock x:Name="menuGestureText" Grid.Column="4" Margin="{TemplateBinding Padding}" Opacity="0.7" Text="{TemplateBinding InputGestureText}" VerticalAlignment="Center"/>
</Grid>
</Border>
<ControlTemplate.Triggers>
<Trigger Property="IsHighlighted" Value="True">
<Setter Property="BorderBrush" TargetName="templateRoot" Value="White"/>
<Setter Property="Background" TargetName="templateRoot" Value="#32a3cf"/>
<Setter Property="TextBlock.Foreground" TargetName="menuHeaderContainer" Value="White" />
</Trigger>
<!--<Trigger Property="IsEnabled" Value="False">
<Setter Property="TextElement.Foreground" TargetName="templateRoot" Value="#FF707070"/>
</Trigger>-->
<!--<MultiTrigger>
<MultiTrigger.Conditions>
<Condition Property="IsHighlighted" Value="True"/>
<Condition Property="IsEnabled" Value="False"/>
</MultiTrigger.Conditions>
<Setter Property="Background" TargetName="templateRoot" Value="#0A000000"/>
<Setter Property="BorderBrush" TargetName="templateRoot" Value="#21000000"/>
</MultiTrigger>-->
</ControlTemplate.Triggers>
</ControlTemplate>
<Menu x:Name="menu_main_project" Grid.Column="1" Grid.Row="0">
<MenuItem Height="42" Template="{DynamicResource MenuItemControlTemplate1}" Width="140">
<MenuItem.Header>
<DockPanel HorizontalAlignment="Stretch">
<Rectangle x:Name="menuBarApplication" Fill="#32a3cf" Width="140" Height="4" DockPanel.Dock="Top" Margin="0,3,0,0"/>
<Image Source="/Resources/ico_application.png" Stretch="Fill" DockPanel.Dock="Left" Margin="10,2,0,0" Height="19" Width="22">
</Image>
<ContentPresenter x:Name="APPLICATION_MENU" TextBlock.Foreground="#0e526a" Margin="4,0,0,0" Content="Application" DockPanel.Dock="Right" VerticalAlignment="Center"/>
</DockPanel>
</MenuItem.Header>
<!--<MenuItem Header="Learner" x:Name="menuItem_LearnerApplicationHome" Click="OnClick_LearnerApplicationHome"/>-->
<MenuItem Template="{DynamicResource MenuItemControlTemplate2}" Header="DL" x:Name="menuItem_DLApplicationHome" Click="OnClick_DLApplicationHome" Foreground="#0e526a" Margin="-10,0,0,0" Background="White"/>
<MenuItem Template="{DynamicResource MenuItemControlTemplate2}" Header="Adjudication" x:Name="menuItem_Adjudication" Click="OnClick_AdjudicationHome" Foreground="#0e526a" Margin="-10,0,0,0" Background="White"/>
<MenuItem Template="{DynamicResource MenuItemControlTemplate2}" Header="Summary" x:Name="menuItem_Application_Summary" Click="OnClick_ApplicationSummaryHome" Foreground="#0e526a" Margin="-10,0,0,0" Background="White"/>
</MenuItem>
<MenuItem Width="105" Height="42" Template="{DynamicResource MenuItemControlTemplate1}">
<MenuItem.Header>
<DockPanel HorizontalAlignment="Stretch">
<Rectangle x:Name="menuBarCard" Fill="#32a3cf" Width="105" Height="4" DockPanel.Dock="Top" Margin="0,3,0,0"/>
<Image Source="/Resources/ico_card.png" Margin="20,2,0,0" Stretch="Fill" DockPanel.Dock="Left" Height="19" Width="22"/>
<ContentPresenter x:Name="CARD_MENU" Margin="4,0,0,0" Content="Card" TextBlock.Foreground="#0e526a" DockPanel.Dock="Right" VerticalAlignment="Center"/>
</DockPanel>
</MenuItem.Header>
<MenuItem Header="Card" Template="{DynamicResource MenuItemControlTemplate2}" Name="menuItem_CardHome" Click="OnClick_CardkHome" Margin="-10,0,0,0" Background="White" Foreground="#0e526a"/>
<MenuItem Header="Summary" Template="{DynamicResource MenuItemControlTemplate2}" x:Name="menuItem_Card_Summary" Click="OnClick_CardSummaryHome" Foreground="#0e526a" Margin="-10,0,0,0" Background="White"/>
<!-- Menu -->
</MenuItem>
<MenuItem Width="105" Height="42" Template="{DynamicResource MenuItemControlTemplate1}">
<MenuItem.Header>
<DockPanel HorizontalAlignment="Stretch">
<Rectangle x:Name="menuBarStock" Fill="#32a3cf" Width="105" Height="4" DockPanel.Dock="Top" Margin="0,3,0,0"/>
<Image Source="/Resources/ico_stock.png" Margin="18,2,0,0" Stretch="Fill" DockPanel.Dock="Left" Height="19" Width="22"/>
<ContentPresenter x:Name="STOCK_MENU" Margin="4,0,0,0" Content="Stock" TextBlock.Foreground="#0e526a" DockPanel.Dock="Right" VerticalAlignment="Center"/>
</DockPanel>
</MenuItem.Header>
<MenuItem Header="Stock" Template="{DynamicResource MenuItemControlTemplate2}" Name="menuItem_StockHome" Click="OnClick_StockHome" Margin="-10,0,0,0" Background="White" Foreground="#0e526a"/>
<MenuItem Header="Item" Template="{DynamicResource MenuItemControlTemplate2}" Name="menuItem_ItemHome" Click="OnClick_ItemHome" Margin="-10,0,0,0" Background="White" Foreground="#0e526a"/>
<MenuItem Header="Summary" Template="{DynamicResource MenuItemControlTemplate2}" x:Name="menuItem_Stock_Summary" Click="OnClick_BoxSummaryHome" Foreground="#0e526a" Margin="-10,0,0,0" Background="White"/>
</MenuItem>
</Menu>
Vielleicht sollten Sie etwas Code hinzufügen ... damit wir einen Blick darauf werfen können, was vielleicht falsch ist. – r41n
Und was ist das Problem darin? Willst du sie auf button_click öffnen? –
Ich möchte nicht, dass andere Untermenüs ohne Klicken geöffnet werden. –