我想構建一個數據庫驅動的VB.Net應用程序,它從數據庫中提取已註冊帳戶的列表,並在菜單中顯示throes帳戶的用戶名,以便用戶可以選擇一個並打開一個新的表單(他們在哪裏工作)。VB.Net動態數據庫驅動的菜單
我至今對於MDI父窗口的構造
Public Sub New()
InitializeComponent()
Dim tsmi As New ToolStripMenuItem("Users", Nothing, AddressOf users_mousedown)
MenuStrip1.Items.Add(tsmi)
End Sub
用戶菜單(其中SQLite_db
則是一個數據庫後user_class
類的處理程序是兩個項目類(用戶名和密碼)的字符串。
Sub users_mousedown()
Dim submenu As New ContextMenuStrip
Dim database As New SQLite_db
Dim user_list As New List(Of user_class)
user_list = database.List_Users
For Each user As user_class In user_list
submenu.Items.Add(user.username, Nothing, AddressOf Open_new_window(user))
Next
submenu.Items.Add("Add new user", Nothing, AddressOf AddNew)
submenu.Show(Control.MousePosition)
End Sub
我希望發生的,當用戶點擊創建一個新的MDI子窗體的上下文菜單上,並在用戶的數據傳遞,然而因爲AddressOf不喜歡通過數據這不起作用...
我看過代表和landa表達式,但不認爲他們任何一個做我所需要的,另一種選擇是讓我自己的ContextMenuStrip類的子類,它1)以我想要的方式處理點擊,2)聽起來像一場噩夢。
在我開始進入我認爲會是很多工作的地獄之前,我是否錯過了一些東西?是他們做我想做的事的簡單方法嗎?或者如果沒有的話,子分類的ContextMenuStrip的工作,如果沒有任何想法,將(將是否會,如何開始學習如何做到這一點的任何想法)
aha,謝謝今晚我會給你一個鏡頭(英國時間) – 2009-11-16 09:51:41