1
我在我的應用程序中使用了Composite Application Block。有兩個概念,EventHandlers和CommandHandlers與我看起來非常相似......都允許您從另一部分UI調用功能。他們有什麼區別?命令與複合應用程序塊中的事件之間的區別
我在我的應用程序中使用了Composite Application Block。有兩個概念,EventHandlers和CommandHandlers與我看起來非常相似......都允許您從另一部分UI調用功能。他們有什麼區別?命令與複合應用程序塊中的事件之間的區別
我相信這是一個方便的問題。我們在色帶使用的命令爲按鈕:
Public Sub AddElementToRibbonGroup(WorkItem As WorkItem, elementDescription As String, menuGroupKey As String, commandName As String, commandKey As String)
WorkItemController.ShellExtensionService.AddButtonToolExtension(_
WorkItem, _
commandKey, _
New ButtonToolAppearance(elementDescription), _
menuGroupKey, _
WorkItem.Commands(commandName))
End Sub
但我們引發事件從一種形式,一個控制器來處理邏輯:
sample_View.vb:
<EventBroker.EventPublication(Constants.Events.CreateNewNavTab, PublicationScope.Global)> _
Public Event CreateNewNavTab As EventHandler
' Node in Navigation Tree is double clicked
Private Sub NavTree_DoubleClick(sender As System.Object, e As System.EventArgs) Handles NavTree.DoubleClick
...
RaiseEvent CreateNewNavTab(Me, Nothing)
End Sub
sample_controller。 vb:
' A new tab is created from the Nav Tree.
<EventSubscription(Constants.Events.CreateNewNavTab, ThreadOption.UserInterface)> _
Public Sub CreateNewNavTab(ByVal pNavView As Object, ByVal e As EventArgs)
...
End Sub
希望這有助於!
你是問一般的抽象意義上的定義,還是你問CAB中命令/事件的具體上下文? – 2012-07-31 19:59:49
特定於CAB – JoelFan 2012-08-01 14:45:20