feat(ModEvent): 支持一个按钮执行多个事件

没给 HelpEntry 加这个功能,其他控件都加了
This commit is contained in:
Open-KFC
2025-04-07 07:01:54 +08:00
parent 16e09c792c
commit cd736be212
9 changed files with 298 additions and 125 deletions
@@ -150,7 +150,7 @@ Public Class MyButton
Hint("主页自定义按钮语法已更新,且不再兼容老版本语法,请查看新的自定义示例!")
End If
End If
ModEvent.TryStartEvent(EventType, EventData)
ModEvent.ProcessCustomEvents(EventType, EventData, _CustomEvents)
End Sub
Public Property EventType As String
Get
@@ -170,6 +170,18 @@ Public Class MyButton
End Set
End Property
Public Shared ReadOnly EventDataProperty As DependencyProperty = DependencyProperty.Register("EventData", GetType(String), GetType(MyButton), New PropertyMetadata(Nothing))
Public Property CustomEvents As CustomEventCollection
Get
If _CustomEvents Is Nothing Then
_CustomEvents = New CustomEventCollection
End If
Return _CustomEvents
End Get
Set(value As CustomEventCollection)
_CustomEvents = value
End Set
End Property
Private _CustomEvents As CustomEventCollection = Nothing
'鼠标点击判定(务必放在点击事件之后,以使得 Button_MouseUp 先于 Button_MouseLeave 执行)
Private IsMouseDown As Boolean = False