Ich habe ein benutzerdefiniertes Ereignis erstellt. Was ich vorhabe, ist, einen benutzerdefinierten Aufgabenbereich unsichtbar zu machen, wenn ich auf die Schließen-Schaltfläche klicke, aber meine MainTaskPaneControl_HideTaskPane
-Methode wird nicht ausgeführt. Ich vermisse eindeutig etwas Einfaches, aber ich bin mir nicht sicher, was ich vermisse.RaiseEvent wird nicht verarbeitet
Code, der zuerst in ThisAddIn Klasse läuft:
Dim gen = New PowerPointDocSetUpMain()
AddHandler gen.HideTaskPane, AddressOf MainTaskPaneControl_HideTaskPane
Abbrechen-Button in PowerPointDocSetUp Klasse:
Private Sub ButtonCancel_Click(sender As Object, e As EventArgs) Handles ButtonCancel.Click
Dim main As PowerPointDocSetUpMain = New PowerPointDocSetUpMain
main.CloseMain()
End Sub
PowerPointDocSetUpMain Klasse:
Public Event HideTaskPane()
Public Function CloseMain()
RaiseEvent HideTaskPane()
End Function
MainTaskPaneControl_HideTaskPane Methode in ThisAddIn Klasse:
Friend Sub MainTaskPaneControl_HideTaskPane()
'Hide the requested task pane.
Globals.ThisAddIn.HideTaskPane()
End Sub
HideTaskPane Methode in ThisAddIn Klasse:
Friend Function HideTaskPane() As System.Windows.Forms.UserControl
myTaskPane.Visible = False
End Function
Danke für Ihren Kommentar. Ich verstehe, was Sie sagen, und es ist richtig, aber ich bin mir nicht sicher, wie ich das beheben würde, da ich eine Instanz von 'PowerPointDocSetUpMain' für meine Abbrechen-Schaltfläche brauche –
Wie gesagt, es ist schwer, spezifisch zu sein, weil wir es nicht wissen die Beziehung zwischen diesen Code-Schnipsel. Grundsätzlich muss sich das zweite Code-Snippet jedoch auf das Objekt beziehen, das im ersten Code-Snippet erstellt wurde. Das bedeutet, dass Sie dieses Objekt irgendwo platzieren müssen, damit das zweite Code-Snippet darauf zugreifen kann, dh das 'ThisAddIn'-Objekt, das das' PowerPointDocSetUpMain'-Objekt erstellt und den Event-Handler registriert, um es in das 'PowerPointDocSetUp' -Objekt zu übergeben, das' aufruft CloseMain'. – jmcilhinney