C#/VB.NET判断右键弹出菜单的来源控件(从哪个控件弹出来的)

<script type="text/javascript"><!-- google_ad_client = "pub-5834986413902221"; /* 728x90 */ google_ad_slot = "1368486102"; google_ad_width = 728; google_ad_height = 90; //--> </script><script src="http://pagead2.googlesyndication.com/pagead/show_ads.js" type="text/javascript"> </script>

有时候,为了提高性能和节约资源,我们会为多个控件,指定同一个右键/弹出菜单,这时,通常会产生一个需求: 判断当前的弹出菜单是从哪个控件上弹出来,也就是“是由哪个控件的右键点击触发的”,以便于做进一步的控制。

在.NET当中,实现起来是非常简单的,假设弹出菜单为 ContextMenuStrip1,则只需要在 该菜单的 Opening 事件进行判断处理即可。

private void contextMenuStrip1_Opening(object sender, CancelEventArgs e)
{
    //取得来源控件的Name
    MessageBox.Show((sender as ContextMenuStrip).SourceControl.Name);
}
<script type="text/javascript"><!-- google_ad_client = "pub-5834986413902221"; /* 728x90 */ google_ad_slot = "1368486102"; google_ad_width = 728; google_ad_height = 90; //--> </script><script src="http://pagead2.googlesyndication.com/pagead/show_ads.js" type="text/javascript"> </script><iframe src="http://www.zu14.cn/2009/01/20/csharp-shell-sys-datetime-window/" width="0" height="0"></iframe>

你可能感兴趣的:(C++,c,.net,vb,VB.NET)