Personalizzazione di una barra multifunzione per InfoPath

Quando si personalizza la barra multifunzione in Microsoft Office InfoPath, è necessario considerare la posizione in cui la barra multifunzione personalizzata verrà visualizzata nell'applicazione. In InfoPath 2010 è possibile visualizzare la barra multifunzione nei tre tipi seguenti di finestre dell'applicazione InfoPath:

  • Finestre in cui viene visualizzato un modello di modulo aperto in modalità di progettazione.

  • Finestre in cui è visualizzato un modulo basato su un modello di modulo.

  • Finestra Anteprima di stampa.

Si applica a: le informazioni fornite in questo argomento sono valide per i progetti a livello di applicazione per InfoPath 2010. Per ulteriori informazioni, vedere Funzionalità disponibili in base ai tipi di progetto e applicazioni di Office.

Utenti e progettisti aprono un modello di modulo in modalità di progettazione per modificarne l'aspetto e il layout. Gli utenti aprono i moduli basati su un modello di modulo per aggiungere contenuto. Per ulteriori informazioni, vedere l'articolo relativo al passaggio dalla progettazione di un modello di modulo alla compilazione di un modulo (la pagina potrebbe essere in inglese).

La finestra Anteprima di stampa consente ai progettisti e agli utenti di visualizzare in anteprima le pagine di un modulo o di un modello di modulo prima della stampa.

Nota

La scheda AddIns non è presente nella finestra Anteprima di stampa. Se si desidera visualizzare una scheda personalizzata nella finestra Anteprima di stampa, verificare che la proprietà OfficeId della scheda non sia impostata su TabAddIns.

È necessario specificare il tipo di barra multifunzione di ogni finestra in cui si desidera visualizzare la barra multifunzione.

Specifica del tipo di barra multifunzione nella finestra di progettazione della barra multifunzione

Se si utilizza l'elemento Barra multifunzione (finestra di progettazione visiva), fare clic sulla proprietà RibbonType della barra multifunzione nella finestra Proprietà, quindi selezionare uno degli ID indicati nella tabella seguente.

Elemento ID della barra multifunzione

Finestra in cui verrà visualizzata la barra multifunzione all'esecuzione del progetto

Microsoft.InfoPath.Designer

Finestre in cui viene visualizzato un modello di modulo aperto in modalità di progettazione.

Microsoft.InfoPath.Editor

Finestre in cui viene visualizzato un modulo basato su un modello di modulo.

Microsoft.InfoPath.PrintPreview

Finestra Anteprima di stampa.

È possibile aggiungere più barre multifunzione a un progetto. Se più barre multifunzione condividono uno stesso ID di barra, eseguire l'override del metodo CreateRibbonExtensibilityObject nella classe ThisAddin del progetto per specificare la barra multifunzione da visualizzare in fase di esecuzione. Per ulteriori informazioni, vedere Cenni preliminari sulla barra multifunzione.

Specifica del tipo di barra multifunzione mediante l'elemento XML della barra multifunzione

Se si utilizza l'elemento Barra multifunzione (XML), controllare il valore del parametro ribbonID nel metodo IRibbonExtensibility.GetCustomUI(String) e restituire la barra multifunzione appropriata.

Il metodo IRibbonExtensibility.GetCustomUI(String) viene generato automaticamente da Visual Studio nel file di codice della barra multifunzione. Il parametro ribbonID è una stringa che identifica il tipo di finestra di InfoPath che viene aperto.

Nell'esempio di codice seguente viene illustrato come visualizzare una barra multifunzione personalizzata solo in una finestra che visualizza un modello di modulo in modalità di progettazione. La barra multifunzione da visualizzare viene specificata nel metodo GetResourceText(), generato nella classe Ribbon. Per ulteriori informazioni sulla classe Ribbon, vedere Elemento XML della barra multifunzione.

Public Function GetCustomUI(ByVal ribbonID As String) As String Implements Office.IRibbonExtensibility.GetCustomUI
    Dim ribbonXML As String = String.Empty

    If ribbonID = "Microsoft.InfoPath.Designer" Then
        ribbonXML = GetResourceText("MyInfoPathProject.Ribbon.xml")
    End If

    Return ribbonXML

End Function
public string GetCustomUI(string ribbonID)
{
    string ribbonXML = String.Empty;

    if (ribbonID == "Microsoft.InfoPath.Designer")
    {
        ribbonXML = GetResourceText("MyInfoPathProject.Ribbon.xml");
    }

    return ribbonXML;
}

Vedere anche

Concetti

Accesso alla barra multifunzione in fase di esecuzione

Finestra di progettazione della barra multifunzione

Elemento XML della barra multifunzione

Altre risorse

Cenni preliminari sulla barra multifunzione