1
我正在嘗試將按鈕下的ContextMenu居中。我試圖根據ContextMenu的高度來設置VerticalOffset屬性,這樣無論項目的數量如何,菜單的頂部始終位於相同的位置。我似乎無法獲得菜單的高度(可能是因爲它尚未繪製?)。我的代碼如下,我怎樣才能獲得ContextMenu的高度?WPF - 按鈕下的中心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;
}
感謝repsonse。將放置模式設置爲底部會將ContextMenu移動到底部,但它並不位於我的按鈕下方。我需要將菜單置於按鈕下方。爲了使用PlacementMode.Bottom,我需要知道ContextMenu的寬度才能正確對中。 – user10001110101
請參閱更新後的帖子。 –
非常感謝,像魅力工作。我對WPF和綁定相當陌生,所以我非常感謝他們的幫助。 – user10001110101