将委托传递给程序 [英] Passing a delegate to procedure
本文介绍了将委托传递给程序的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!
问题描述
在我的表格中,我有:
In my form I have:
Private Sub AssignMenuHandler
For Each historyItem In _historyMenu.HistoryItems
menItem = historyItem.MenuItem
AddHandler menItem.Click, AddressOf MenuHandler
Next
End Sub
Public Sub MenuHandler(ByVal sender As Object, ByVal e As EventArgs)
Dim menuItem As ToolStripMenuItem = CType(sender, ToolStripMenuItem)
Dim historyItem As String
historyItem = menuItem.Text .....
但是我想在创建historyItem.MenuItems时在HistoryMenu类中进行分配.为此,我需要类似
的东西
But I want to do the asignment in the HistoryMenu class when the historyItem.MenuItems are created. To do that I need something like
Private Sub LoadHistory(ByVal mainMenuItem As ToolStripMenuItem, delegateProcedure as ???)
Dim menTemp As System.Windows.Forms.ToolStripMenuItem
Dim menuText As String
Dim historyItem As HistoryItem
For Each historyItem In _historyItems
menTemp = historyItem.MenuItem
AddHandler menTemp.Click, AddressOf delegateProcedure
Next
End Sub
我如何声明委托程序?如何在表格中定义它?能做到吗?
[edit]添加的代码块-OriginalGriff [/edit]
How do I declare delegateProcedure? How do I define it in the form? Can it be done?
[edit]Code blocks added - OriginalGriff[/edit]
推荐答案
本文演示了如何在VB.NET中删除和使用委托: 代表的初学者指南 [
This article demonstrates how to delcare and use delegates in VB.NET:
A Beginner''s Guide to Delegates[^].
这篇关于将委托传递给程序的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!
查看全文