2016-10-25 53 views
-2

您好我的Windows窗體與複選框。我想啓用/禁用單個按鈕附加到我的功能區。傷人有人向我展示正確的方式? XML代碼絲帶的從窗體啓用/禁用功能區按鈕

部分看起來像這樣

<tab idMso="TabNewMailMessage"> 
     <group id="Kompresja2" 
       label="Lab1"> 
      <toggleButton id="Kompresja6" 
       imageMso="Smile" 
       onAction="ProcedureX" 
       getPressed="Wcisnieto" 
       getEnabled="Czytaj_stan" 
       label="Lab2" 
       size="large" 
      /> 
     </group> 
     </tab> 
+0

很多功能區控件都圍繞在每個人都可用的工具箱中,因爲.NET框架沒有。你需要對你正在使用的那個更加具體。在你的問題上使用適當的標籤。 –

+0

爲什麼問一個問題,沒有得到答覆得分減。一些廢話。 –

+0

更具體?好。 Ive Windows Form在我的VB.Office項目中,帶有任何控件。我想推動其中一個來控制我自己的Ribbon按鈕,因爲我希望在菜單中打開和關閉(啓用/禁用它)。也許有人知道如何做到這一點,另一個則推動減去這個職位。 –

回答

0
  • 的getEnabled回調函數(你的情況Czytaj_stan)檢查,看看是否按鈕啓用與否 - 返回true如果按鈕應該
    被啓用,否則爲False。

  • 只要功能區控制無效,每當辦公應用程序決定需要時,都會調用getEnabled回調函數。當它被最小化時,或者通過調用[IRibbonUI-object].InvalidateControl("Kompresja6")使該控件失效或[IRibbonUI-object].Invalidate()重繪整個功能區([IRibbonUI-object].InvalidateControlMso("ID")使內置控件失效)來實現。

  • 當自定義色帶加載時,需要設置對IRibbonUI對象的引用。

爲了使這項工作,你需要:

  1. 確保您可以通過在customUI XML標籤添加一個onload回調函數來獲取參考IRibbonUI對象:<customUI xmlns="http://schemas.microsoft.com/office/2009/07/customui" onLoad="Ribbon_Load">
  2. 執行他Ribbon_Load回調函數並設置對參數IRibbonUI的引用。
  3. 實現getEnabled函數Czytaj_stan來決定何時啓用按鈕。
  4. 讓您的表單按鈕首先修改Czytaj_stan中啓用/禁用的條件,然後撥打[IRibbonUI-object].InvalidateControl("Kompresja6")以使帶狀按鈕無效。