【发布时间】:2018-01-25 22:14:15
【问题描述】:
我正在使用带有 C# 的 WPF。我有一个按钮网格,如果右键单击,我已经为每个按钮分配了一个上下文菜单。右键单击按钮可以正常工作,并且会显示上下文菜单,但单击菜单项会产生空发件人。有什么问题?以下是嵌入到 Window XAML 代码中的相关代码:
<Window.Resources>
<ContextMenu x:Key="cmButton">
<MenuItem Header="Copy" Click="Copy_Click" />
<MenuItem Header="Cut" />
<Separator />
<MenuItem Header="Paste" Click="Paste_Click" />
</ContextMenu>
</Window.Resources>
这里是相关的 C# 代码:
public void WarpHeadCell_RightClick(DraftWindow w, Button b)
{
ContextMenu cm = w.FindResource("cmButton") as ContextMenu;
cm.PlacementTarget = b;
cm.IsOpen = true;
}
private void Copy_Click(object sender, RoutedEventArgs e)
{
MenuItem mi = e.OriginalSource as System.Windows.Controls.MenuItem;
ContextMenu cm = mi.ContextMenu;
Button b = (Button)cm.PlacementTarget;
}
mi 始终为空,有人知道吗?
【问题讨论】:
标签: c# wpf contextmenu