我正在尝试将 ContextMenu 置于按钮下方。我正在尝试根据 ContextMenu 的高度设置 VerticalOffset 属性,以便无论项目数量如何,菜单的顶部始终位于同一位置。我似乎无法获得菜单的高度(可能是因为它还没有被绘制?)。我的代码在下面,如何获取 ContextMenu 的高度?
private void Button_Click(object sender, RoutedEventArgs e)
{
Button PopUpButton = (sender as Button);
PopUpButton.ContextMenu.IsEnabled = true;
PopUpButton.ContextMenu.PlacementTarget = PopUpButton;
PopUpButton.ContextMenu.Placement = System.Windows.Controls.Primitives.PlacementMode.Center;
PopUpButton.ContextMenu.VerticalOffset = ((PopUpButton.ContextMenu.Height / 2) + 25);
PopUpButton.ContextMenu.IsOpen = true;
}