對於Button下拉式菜單,代碼如下:
<Button x:Name="PopupMenu" Content="┇" Click="PopupMenu_Click">
<Button.ContextMenu>
<ContextMenu Name="contextMenu">
<DockPanel>
<Label DockPanel.Dock="Left" Content="XXX" />
<ComboBox ItemsSource="{Binding XXXCollection}" SelectedItem="{Binding Value}"/>
</DockPanel>
<MenuItem Header="XXX" Padding="5,0" Command="{Binding XXX1Command}"/>
<MenuItem Header="XXX" Padding="5,0" Command="{Binding XXXCommand}"/>
<MenuItem Header="XXX" Padding="5,0" Command="{Binding XXXCommand}"/>
</ContextMenu>
</Button.ContextMenu>
</Button>
Backside代碼如下:
private void PopupMenu_Click(object sender, RoutedEventArgs e)
{
this.contextMenu.PlacementTarget = this.PopupMenu;
this.contextMenu.Placement = System.Windows.Controls.Primitives.PlacementMode.Bottom;
this.contextMenu.IsOpen = true;
}