Benutzer mit den meisten Antworten
VSTO Customer Task Pane ausblenden per VB

Frage
-
Hallo,
ich bearbeite ein kleines Projekt, in dem ich eine Customer Tast Pane in Word verwenden möchte. Dazu habe ich im Bereich "Exemplarische Vorgehensweise" ein Beispiel gefunden und dieses mit VSTO umgesetzt. Gleichzeitig habe ich ein weiteres Ribbon mit einer Schaltfläche erstellt. Damit möchte ich die CTP ein, bzw. ausblenden. Das krieg ich aber nicht hin. Folgenden Code habe ich erstellt:
Public Class ThisAddIn Public myUserControl1 As myCTP Public myCustomTaskPane As Microsoft.Office.Tools.CustomTaskPane Private Sub ThisAddIn_Startup() Handles Me.Startup myUserControl1 = New myCTP Dim myCustomTaskPane As Microsoft.Office.Tools.CustomTaskPane = _ Me.CustomTaskPanes.Add(myUserControl1, "My Task Pane") myCustomTaskPane.Visible = True End Sub Private Sub ThisAddIn_Shutdown() Handles Me.Shutdown End Sub Public Sub showCTP() myUserControl1 = New myCTP Dim myCustomTaskPane As Microsoft.Office.Tools.CustomTaskPane = _ Me.CustomTaskPanes.Add(myUserControl1, "My Task Pane") myCustomTaskPane.Visible = True End Sub Protected Overrides Function CreateRibbonExtensibilityObject() As Microsoft.Office.Core.IRibbonExtensibility Return New RbTexthandbuch() End Function End Class
Die Prozedur showCTP soll die Eigenschaft Visible einstellen.
Die Schaltfläche im Ribbon löst die Prozedur Ausblenden_Click aus. Zur Kontrolle habe ich einen MSGBOX eingefügt, sie wird gestartet.
<Runtime.InteropServices.ComVisible(True)> _ Public Class RbTexthandbuch Implements Office.IRibbonExtensibility Private ribbon As Office.IRibbonUI Sub Ausblenden_Click(ByVal control As Office.IRibbonControl) MsgBox("test") End Sub Public Sub New() End Sub Public Function GetCustomUI(ByVal ribbonID As String) As String Implements Office.IRibbonExtensibility.GetCustomUI Return GetResourceText("MyFirstWordAddIn.RbTexthandbuch.xml") End Function #Region "Menübandrückrufe" 'Erstellen Sie hier Rückrufmethoden. Weitere Informationen über das Hinzufügen von Rückrufmethoden erhalten Sie, indem Sie das Menüband-XML-Element im Projektmappen-Explorer markieren und dann F1 drücken. Public Sub Ribbon_Load(ByVal ribbonUI As Office.IRibbonUI) Me.ribbon = ribbonUI End Sub #End Region #Region "Hilfsprogramme" Private Shared Function GetResourceText(ByVal resourceName As String) As String Dim asm As Reflection.Assembly = Reflection.Assembly.GetExecutingAssembly() Dim resourceNames() As String = asm.GetManifestResourceNames() For i As Integer = 0 To resourceNames.Length - 1 If String.Compare(resourceName, resourceNames(i), StringComparison.OrdinalIgnoreCase) = 0 Then Using resourceReader As IO.StreamReader = New IO.StreamReader(asm.GetManifestResourceStream(resourceNames(i))) If resourceReader IsNot Nothing Then Return resourceReader.ReadToEnd() End If End Using End If Next Return Nothing End Function #End Region End Class
Dieser Code wurde großteils von dem Assistenten erstellt. Nur die Prozedur Ausblenden_Click habe ich erstellt. Leider kann ich eine Prozedur showCTP daraus nicht starten. Warum eigentlich nicht.
Was mache ich falsch?
Michael Pleick
Antworten
-
Hallo,
ich habe das Problem selbst lösen können. Dazu habe ich Public shared verwendet. Nun kann ich auf die Prozeduren anderer Klassen zugreifen.
Danke für den Tipp.
Michael Pleick
- Als Antwort markiert Michael Pleick Samstag, 15. Juni 2013 09:10
Alle Antworten
-
Hallo Michael,
Vielleicht kann diese Beispiel Dir weiterhelfen http://code.msdn.microsoft.com/office/VSTO-Create-a-Custom-Task-c4919632/view/SourceCode
Gruss,
-
Hallo,
ich habe das Problem selbst lösen können. Dazu habe ich Public shared verwendet. Nun kann ich auf die Prozeduren anderer Klassen zugreifen.
Danke für den Tipp.
Michael Pleick
- Als Antwort markiert Michael Pleick Samstag, 15. Juni 2013 09:10