6

मेरे पास Outlook टॉक फलक है जो Outlook खोलते समय खुलता है और मैंने इस दृष्टिकोण का उपयोग करके इसे जोड़ा है।नए मेल संदेश में मौजूदा कार्य फलक जोड़ना - आउटलुक

https://msdn.microsoft.com/en-us/library/aa942846.aspx

मैं दिखा और उदाहरण यहां दिए गए का उपयोग कर कार्य फलक छुपा कर रहा हूँ:

https://msdn.microsoft.com/en-us/library/bb608590.aspx

तो, यह एक ई-मेल के साथ काम करता है जब टॉगल बटन पर उपयोगकर्ता क्लिक करता है। हालांकि, मैंने Outlook की नई मेल संदेश विंडो पर एक और रिबन नियंत्रण जोड़ा है और मैं वही कार्य फलक भी उस विंडो के किनारे उपलब्ध होना चाहूंगा। मैं एक और रिबन नियंत्रण (डिजाइनर) बनाने में कामयाब रहा और इस नए बटन को जोड़ा लेकिन जब मैं इसे टॉगल करता हूं, तो यह नई मेल संदेश विंडो पर एक कार्य फलक नहीं खोलता है। यह केवल मौजूदा कार्य फलक विंडो को टॉगल करता है जो इनबॉक्स में उपलब्ध है।

नया मेल संदेश रिबन नियंत्रण के लिए

कोड:

Imports Microsoft.Office.Tools.Ribbon 
Imports Outlook = Microsoft.Office.Interop.Outlook 
Imports Microsoft.Office.Tools 

Public Class ComposeSidebarRibbon 

    Private Sub ComposeSidebarRibbon_Load(ByVal sender As System.Object, ByVal e As RibbonUIEventArgs) Handles MyBase.Load 

    End Sub 

    Private Sub SidebarToggleButton_Click(sender As Object, e As RibbonControlEventArgs) Handles SidebarToggleButton.Click 
     Globals.ThisAddIn.TaskPane.Visible = TryCast(sender, Microsoft.Office.Tools.Ribbon.RibbonToggleButton).Checked 
    End Sub 
End Class 

मैं यह कर के बारे में जाना कैसे कर सकते हैं?

उत्तर

2

MSDN के अनुसार आप रिबन के लिए अलग पहचान-पत्र का उपयोग करके एक से अधिक रिबन जोड़ सकते हैं -

आप एक परियोजना के लिए एक से अधिक रिबन जोड़ सकते हैं। यदि एक से अधिक रिबन एक रिबन आईडी साझा करते हैं, तो अपने प्रोजेक्ट के इस एडिन श्रेणी में CreateRibbonExtensibilityObject विधि को ओवरराइड करें ताकि यह निर्दिष्ट किया जा सके कि कौन सा रिबन रन टाइम पर प्रदर्शित होता है।

इस के लिए उपयोग करने के लिए के समान होगा समारोह -

Protected Overrides Function CreateRibbonExtensibilityObject() As _ 
    Microsoft.Office.Core.IRibbonExtensibility 
    If myCondition = True Then 
     Return Globals.Factory.GetRibbonFactory().CreateRibbonManager _ 
      (New Microsoft.Office.Tools.Ribbon.IRibbonExtension() _ 
       {New Ribbon1()}) 
    Else 
     Return Globals.Factory.GetRibbonFactory().CreateRibbonManager _ 
      (New Microsoft.Office.Tools.Ribbon.IRibbonExtension() _ 
       {New Ribbon2()}) 
    End If 
End Function 

कृपया देखें MSDN संदर्भ HERE

+0

और क्या myCondition मामले मैं उपर्युक्त में हो सकता है? – Neophile

+0

मुझे नहीं लगता कि आप समझ गए कि मेरा क्या मतलब है, मूल रूप से यह टास्क फलक जो नई मेल संदेश विंडो में नहीं दिख रहा है। मेरे रिबन नियंत्रण व्यवहार के रूप में व्यवहार कर रहे हैं और काम कर रहे हैं। – Neophile

+0

मैं क्षमा चाहता हूं, गलत समझा जाना चाहिए - यह लिंक https://msdn.microsoft.com/en-us/library/bb608622(v=vs.100).aspx या यह एक https://msdn.microsoft.com देखें /en-us/library/bb296010(v=vs.100).aspx –

संबंधित मुद्दे