// Handles IsOpen property changes private static void OnIsOpenChanged(DependencyObject d, DependencyPropertyChangedEventArgs e) { MenuItem menuItem = (MenuItem)d; if (menuItem.contextMenu == null) { menuItem.CreateMenu(); } }