В VB6 я использую Редактор меню для хранения списка учеников. например Студенты .... Боб .... Джо .... Билл .... Джеймс
PopupMenu Students
Затем я использовал мастер Visual Studio 2008 для преобразования проекта Vb6 в. NET.
Как заставить это меню работать. Net без особых изменений (если решение включает импорт DLL-файла VB6 в. Net)?
In. Net Студент сейчас:
Public WithEvents Students As System.Windows.Forms.ToolStripMenuItem
Итак, я сделал:
Students.ShowDropDown()
вместо:
PopupMenu Students
И все это работает, кроме местоположения. . net, кажется, заставляет местоположение быть 0,0. И я хотел бы, чтобы при щелчке мыши всплыло меню, как в VB6.
VB. NET Код:
<Global.Microsoft.VisualBasic.CompilerServices.DesignerGenerated()> Partial Class StudentForm
Public WithEvents Students As System.Windows.Forms.ToolStripMenuItem
Public WithEvents John As System.Windows.Forms.ToolStripMenuItem
Public WithEvents MainMenu1 As System.Windows.Forms.MenuStrip
Friend WithEvents ContextMenuStrip1 As ContextMenuStrip
//Initialise Component
Private Sub InitializeComponent()
Me.ContextMenuStrip1 = New System.Windows.Forms.ContextMenuStrip(Me.components)
Me.ContextMenuStrip1.Name = "ContextMenuStrip1"
Me.ContextMenuStrip1.Size = New System.Drawing.Size(181, 26)
Me.Students = New System.Windows.Forms.ToolStripMenuItem
Me.John = New System.Windows.Forms.ToolStripMenuItem
Me.MainMenu1 = New System.Windows.Forms.MenuStrip
Me.MainMenu1.SuspendLayout()
Me.Students.Name = "Students"
Me.Students.Text = "Students"
Me.Students.Visible = False
Me.Students.Checked = False
Me.Students.Enabled = True
Me.John.Name = "John"
Me.John.Text = "Johnny"
Me.John.Checked = False
Me.John.Enabled = True
Me.John.Visible = True
MainMenu1.Items.AddRange(New System.Windows.Forms.ToolStripItem(){ Me.Students})
Students.DropDownItems.AddRange(New System.Windows.Forms.ToolStripItem(){ Me.John})
Me.MainMenu1.ResumeLayout(False)
End Sub
End Class
'MouseUp Event -
Students.ShowDropDown()' This work well bot the location is 0,0- not sure how to change
' I Also Tried Adding the context menu
ContextMenu1.Items.Add(Students)- ' This does not show with sudents. But it shows if I do `ContextMenu1.Items.Add("Test")`
ContextMenu1.Show()