2012-09-25 34 views
5

これはVS2010 + Office 2010アドインです。私が欲しいのは、複数のビルトインタブにボタン(またはボタングループ)を追加するだけです。たとえば、私のボタンは、新しいメールメッセージリボン新しいアポイントリボンの両方で使用できるようにします。私は新しいタブ(ビジュアルデザイナー)を追加しようとしましたが、それは動作していないようです。ボタングループは[新しいメールメッセージ]タブに表示されますが、[予定]タブには表示されません。私はTabNewMailMessageTabAppointmentのIDを使用しています。複数の内蔵リボンタブ(vsto)にグループを追加するにはどうすればよいですか?

答えて

4

、唯一の私は、両方の予定で、私のグループを見ることができた方法と新しいメッセージのタブがしましたそれぞれの組み込みタブに1つのリボンを追加してから、すべてのUIとコードを1つのリボンから別のリボンにコピー/貼り付けることで、各組み込みタブの適切なRibbonType(リボンのプロパティ)を選択してください。

+0

は右のように聞こえます:) – Tangocoder

0

私はOutlookを持っていませんが、Word/Excel/PPTで以下を使っていますので、Outlookでもうまく動作することを期待しています!

リボン(XML)アイテムを追加し、同じように見え、異なるコードで同じIDを持つ2つのタブを追加してみてください。

XML:

<tab idMso="TabNewMailMessage"> 
    <group id="MyGroup1" label="My Group1"> 
     <button id="myButton1" label="Button 1" size="large" onAction="ButtonOnAction" /> 
    </group> 
</tab> 
<tab idMso="TabAppointment"> 
    <group id="MyGroup2" label="My Group2"> 
     <button id="myButton2" label="Button 2" size="large" onAction="ButtonOnAction" /> 
    </group> 
</tab> 

C#の:これについては自分の髪を引っ張って他の誰のために

public void ButtonOnAction(IRibbonControl control) 
    { 
     switch (control.Id) 
     { 
      case "myButton1": 
      case "myButton2": 
       // do something 
       Console.Out.WriteLine("Button ID: {0}", control.Id); 
       break; 
     } 
    } 
+0

Olleありがとうございます。私もそのことを期待していましたが、残念です。私の考えは、Mail ComposeとAppointmentは2つの異なるInspectorであり、リボンのRibbonTypeプロパティで選択する必要があるからです。私はそこで複数のリボンタイプを選択しようとしましたが、それもうまくいきません。それが私のために働いた唯一の方法は、新しいリボンを追加することでした。下の私の答えを見てください。 – dotNET

+0

OK、あなたが見つけて答えを投稿したことは素晴らしいです! –

+0

ユーザ@magicnumberは、 'ButtonOnAction'を' public'に設定することで答えを得ました。 –

0

上記の回答と同様ですが、XMLを使用しない場合、2つの異なる場所にグループを追加して2番目のタブを追加することができます。

リボンデザイナでは、リボンに2番目のタブを追加し、ControlIDを2番目のグループに変更します。次に、元のタブのグループを右クリックし、[コピー]をクリックします。新しいタブに戻ってそのグループを貼り付けてください。すでにグループに入っているものはすべてコピーされます。しかし、私はイベントを追加する必要があります。しかし、私にとっては、すでに作成されたイベントを再利用しただけで、完全に機能します。乾杯。

関連する問題