不是有sender吗
把它转成button就好了
把它转成button就好了
解决方案 »
- C# 如何获得通过代理服务器上网者的真实IP?Request.ServerVariables("HTTP_X_FORWARDED_FOR")取不到
- 数据库问题,adapter.update无法更新数据源
- TreeView求帮忙做个导航
- delphi 转 c# 那位兄弟能帮我看看
- 从C++跳到C#还有很多东西要请教啊!
- 删除数据的问题? 急急急
- [-100]经验之谈:千万不要使用Excel做报盘
- 那位牛人有C# DirectShow开发的书籍呀
- treeview控件事件 问题
- 如何设置才能上Vs.net的IDE能编译UnSafe代码呢?
- C#程序打包问题
- sqlite中使用substr(x,y,z)函数查询不出数据
然后获取btn.Name
Button btn = ((e.Source as MenuItem).Parent as ContextMenu).PlacementTarget as Button;
结贴吧。
private void BtnMenuItem_Click(object sender, RoutedEventArgs e)
{
ContextMenu cm = (ContextMenu)ContextMenu.ItemsControlFromItemContainer((MenuItem)e.OriginalSource);
UIElement placementTarget = cm.PlacementTarget;
Button btn = placementTarget as Button;
}
你的却是是正解?但我在ContextMenu用绑定后MenuItem的Parent为null,你试试看是不? <Button>
<Button.ContextMenu>
<ContextMenu>
<ContextMenu.ItemContainerStyle>
<Style TargetType="{x:Type MenuItem}">
<Setter Property="Header" Value="{Binding ItemHeader}"/>
<EventSetter Event="MenuItem.Click" Handler="Item_Click"/>
</Style>
</ContextMenu.ItemContainerStyle>
</ContextMenu>
</Button.ContextMenu>
<Image Source="images/tools.tif" Stretch="Fill"/>
</Button>
private void Item_Click(object sender, RoutedEventArgs e)
{
//........
}