簡體   English   中英

如何確定哪個控件打開ContextMenuStrip

[英]How to determine which control opens ContextMenuStrip

在我的表單中,我具有MenuStrip,ContextMenuStrip和DataGridView。
相同的ContextMenuStrip作為“ DropDown”附加到一個MenuStripItem,並作為“ ContextMenuStrip”附加到DataGridView。 很好

問題是我必須知道打開那個ContextMenuStrip(MeuStripItem或DataGridView)的內容,因此我可以根據它隱藏一些項目。

這是我嘗試確定呼叫者是否為MenuStrip1無效的方法。

   Private Sub mycontextmenu_Opening(ByVal sender As System.Object, ByVal e As System.ComponentModel.CancelEventArgs) Handles mycontextmenu.Opening

       If CType(sender, MenuStrip) Is MenuStrip1 Then
          ExitToolStripMenuItem.Visible = False
       Else
          ExitToolStripMenuItem.Visible = True
       End If
   End Sub

此處出現錯誤消息:無法將類型為“ System.Windows.Forms.ContextMenuStrip”的對象轉換為類型為“ System.Windows.Forms.MenuStrip”。
請幫助解決所描述的問題。

發送者將是上下文菜單條,源控件屬性將檢索所有者實例

Private Sub mycontextmenu_Opening(ByVal sender As System.Object, ByVal e As System.ComponentModel.CancelEventArgs) Handles mycontextmenu.Opening

   If mycontextmenu.SourceControl is MenuStrip1 Then
      ExitToolStripMenuItem.Visible = False
   Else
      ExitToolStripMenuItem.Visible = True
   End If

結束子

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM