Я пытаюсь, чтобы WPF ViewBox "появлялся" в позиции курсора в пользовательском элементе управления, когда пользователь щелкает правой кнопкой мыши элемент управления Прямо сейчас у меня есть код:
<!-- XAML -->
<Viewbox Width="100" Visibility="Collapsed" x:Name="actionBox">
<StackPanel Orientation="Horizontal" HorizontalAlignment="Stretch">
<Button>Item ▼</Button>
<Button>Permute ▼</Button>
<Button>Generate ▼</Button>
</StackPanel>
</Viewbox>
и
/* C# */
private void setPanel_MouseRightButtonDown(object sender, MouseButtonEventArgs e)
{
Point p = e.GetPosition(this);
actionBox.Margin = new Thickness(p.X, p.Y, 0, 0);
actionBox.Visibility = System.Windows.Visibility.Visible;
actionBox.BringIntoView();
}
Событие действительно происходит, но, похоже, ничего не происходит. (MouseRightButtonDown="..."
находится в другой части файла XAML.)
Как можно написать это в WPF?