2016-06-13 6 views
1

作業ウィンドウ内のWPFコントロールに問題があります。私はElementHostを使ってそれを加えました。ですから、作業ウィンドウを表示すると、NewInspectorと検査官Closeはもう発生しません。ここ は私のコード作業ウィンドウでwpfコントロールを使用すると、NewInspectorとCloseイベントが発生しません。

<?xml version="1.0" encoding="UTF-8"?> 
<customUI xmlns="http://schemas.microsoft.com/office/2009/07/customui" onLoad="Ribbon_Load"> 
    <ribbon> 
    <tabs> 
     <tab idMso="TabNewMailMessage">   
     <group label="MyGroup" id="mygroup"> 
      <button id="addItemBlabla" 
        size="large"     
        label="Add Items" 
        onAction="AddItemsClick"/> 
     </group>   
     </tab> 
    </tabs> 
</ribbon> 
</customUI> 

//..Ribbon.cs file 

public void AddItemsClick(Office.IRibbonControl ribbonControl) 
{ 
    Inspector inspector = ribbonControl.Context as Inspector; 
    if (this.taskPane == null) 
    { 
     this.taskPane = Globals.ThisAddIn.CustomTaskPanes.Add(new MyUserControlThatContainsWpfElementHost(), "Label", this.inspector); 
    } 

    this.taskPane.Visible = true;  
} 

//.. ThisAddIn.cs file 

    private void ThisAddIn_Startup(object sender, System.EventArgs e) 
    { 
     this.Application.Inspectors.NewInspector += this.Inspectors_NewInspector;    
    } 

    private void Inspectors_NewInspector(Outlook.Inspector Inspector) 
    { 
     //Does not work after task pane is shown!!!   
    } 

UPDATE は、私は私の問題を解決するため、私はデザイナーでリボンを使用している場合は動作しますが、私はXMLバージョン

答えて

0

を使用する必要がこの例です。

//..ThisAddIn.cs 
private Inspectors inspectors; 

private void ThisAddIn_Startup(object sender, System.EventArgs e) 
{ 
    this.inspectors = this.Application.Inspectors; 
    this.inspectors.NewInspector += this.Inspectors_NewInspector;    
} 

private void Inspectors_NewInspector(Outlook.Inspector Inspector) 
{ 
     //Now this works!!! 
}  
:あなたは私たちがコードに検査官のフィールドを追加する必要があり、ここで答え https://social.msdn.microsoft.com/Forums/vstudio/en-US/73ea73da-8597-4152-938d-2ff99a82960f/newinspector-and-close-event-does-not-raise-if-wpf-control-used-in-task-pane?forum=vsto

を見つけることができます

関連する問題