2012-11-04 3 views
0

나는 내 도구 상자에 추가 한 항목을 사용하는 방법을 알아 내려고하고 있습니다. 아래 코드는 제가 사용하고있는 코드입니다. 툴 패스에 몇 가지 "test1, test2"항목을 추가했는데, 어떻게 클릭 이벤트에 코드를 추가할까요?ToolStripDropDownItem - 올바르게 사용하는 방법? vb.Net

감사합니다.

Public Class MenuStripCustom 
Inherits MenuStrip 

Private WithEvents NavToolStrip As New ToolStripMenuItem("File") 

Sub New() 

    Dim tsi As New ToolStripMenuItem 
    Dim tsi2 As New ToolStripDropDownButton 
    Me.Items.Add(NavToolStrip) 
    NavToolStrip.DropDownItems.Add("test1") 
    NavToolStrip.DropDownItems.Add("test2") 
End Sub 

Private Sub NavToolStripDropDownButton_Click(sender As Object, e As EventArgs) Handles NavToolStrip.DropDownItemClicked 
     ' What do I put here to handle different drop down items? 
     ' ie. select case (dropDownItem) 
     ' case: test1? 
End Sub 

최종 클래스

답변

1

는 ToolStripMenuItem에 이벤트 처리기를 추가하는 방법은 여러 가지가 있습니다. AddressOf를 ToolStripMenuItem 생성자에 전달하거나 AddHandler 키워드를 사용할 수 있습니다. 그러나 ToolStripMenuItems "WithEvents"를 선언하는 것이 가장 쉽습니다. 그런 다음 이벤트를보고 VS IDE에서 연결할 수 있습니다. 예 :

Private WithEvents NavToolStrip As New ToolStripMenuItem("File") 
Private WithEvents tsi As New ToolStripMenuItem("Test1") 
Private WithEvents tsi2 As New ToolStripMenuItem("Test2") 

Sub New() 
    MenuStrip1.Items.Add(NavToolStrip) 

    NavToolStrip.DropDownItems.Add(tsi) 
    NavToolStrip.DropDownItems.Add(tsi2) 

End Sub 

Private Sub tsi_Click(sender As Object, e As EventArgs) Handles tsi.Click 
    MsgBox("Test1") 
End Sub 

Private Sub tsi2_Click(sender As Object, e As EventArgs) Handles tsi2.Click 
    MsgBox("Test2") 
End Sub 
+0

고맙습니다! 나는 "Private WithEvents DropDownItem"을 사용하려고 계속 노력했다. 당신의 모범은 나를 구했습니다. :) – Meowbits

관련 문제