Programmazione delle personalizzazioni a livello di documento
Aggiornamento: novembre 2007
Si applica a |
---|
Le informazioni contenute in questo argomento riguardano solo i progetti Visual Studio Tools per Office e le versioni di Microsoft Office specificati. Tipo di progetto
Versione Microsoft Office
Per ulteriori informazioni, vedere la classe Funzionalità disponibili in base ai tipi di progetto e applicazione. |
Quando si estende Microsoft Office Word o Microsoft Office Excel utilizzando una personalizzazione a livello di documento è possibile eseguire le attività seguenti:
Automazione dell'applicazione di Microsoft Office tramite il modello a oggetti dell'applicazione.
Aggiunta di controlli all'area di un documento.
Chiamata a codice Visual Basic, Applications Edition (VBA) contenuto nel documento dall'assembly di personalizzazione.
Chiamata a codice contenuto nell'assembly di personalizzazione da VBA.
Gestione di determinati aspetti di un documento anche se si trova in un server in cui non è stato installato Microsoft Office.
Personalizzazione dell'interfaccia utente di un'applicazione.
Per informazioni generali sulle personalizzazioni a livello di documento e sugli altri tipi di soluzione che è possibile creare tramite Visual Studio Tools per Office, vedere Cenni preliminari sullo sviluppo di soluzioni Office.
Scrittura di codice nei progetti a livello di documento
Quando si crea un progetto a livello di documento, Visual Studio Tools per Office genera automaticamente nel progetto una classe utilizzabile come base iniziale di scrittura del codice. Visual Studio Tools per Office genera classi specifiche per Word ed Excel:
Per impostazione predefinita, nei progetti a livello di documento di Word la classe viene denominata ThisDocument.
Per i progetti a livello di documento di Excel vengono generate più classi: una per la cartella di lavoro e una per ogni foglio di lavoro. Per impostazione predefinita, queste classi vengono denominate come segue:
ThisWorkbook
Sheet1
Sheet2
Sheet3
La classe generata contiene gestori eventi che vengono chiamati quando il documento viene aperto o chiuso. Per eseguire un blocco di codice all'apertura del documento, aggiungere tale blocco nel gestore eventi Startup. Per eseguire un blocco di codice subito prima della chiusura del documento, aggiungere tale blocco al gestore eventi Shutdown. Per ulteriori informazioni, vedere la classe Eventi di progetti Visual Studio Tools per Office.
Ognuna delle classi generate automaticamente in un progetto a livello di documento deriva da una classe Visual Studio Tools per Office definita elemento host. Ad esempio, la classe ThisDocument di un progetto Word deriva dall'elemento host Microsoft.Office.Tools.Word.Document. Per ulteriori informazioni, vedere Cenni preliminari sugli elementi e sui controlli host.
Accesso al modello a oggetti dell'applicazione host
Per accedere al modello a oggetti dell'applicazione host occorre utilizzare i membri della classe generata nel progetto. Ognuna di queste classi corrisponde a una classe del modello a oggetti di Excel o Word. In particolare, le due classi corrispondenti sono quasi identiche in termini di proprietà, metodi ed eventi. Ad esempio, la classe ThisDocument di un progetto a livello di documento di Word presenta la maggior parte dei membri disponibili nella classe Microsoft.Office.Interop.Word.Document del modello a oggetti di Word.
Nell'esempio di codice seguente viene illustrato come utilizzare il modello a oggetti di Word per salvare il documento appartenente a una personalizzazione a livello di documento di Word. Questo esempio deve essere eseguito dall'interno della classe ThisDocument.
Me.Save()
this.Save();
Per eseguire lo stesso esempio dall'esterno della classe ThisDocument, utilizzare l'oggetto Globals per accedere alla classe ThisDocument. Per ulteriori informazioni sull'oggetto Globals, vedere Accesso globale agli oggetti nei progetti Visual Studio Tools per Office.
Ad esempio, per includere un pulsante Salva nell'interfaccia utente del riquadro delle azioni è possibile aggiungere questo codice a un file di codice del riquadro delle azioni.
Globals.ThisDocument.Save()
Globals.ThisDocument.Save();
Poiché la classe ThisDocument deriva dall'elemento host Microsoft.Office.Tools.Word.Document, il metodo Save chiamato in questo codice è di fatto il metodo Save dell'elemento host Microsoft.Office.Tools.Word.Document. Questo metodo corrisponde al metodo Save della classe Microsoft.Office.Interop.Word.Document del modello a oggetti di Word.
Per ulteriori informazioni sull'utilizzo dei modelli a oggetti di Word ed Excel, vedere Cenni preliminari sul modello a oggetti di Word e Cenni preliminari sul modello a oggetti di Excel.
Aggiunta di controlli ai documenti
Per personalizzare l'interfaccia utente di un documento è possibile aggiungere controlli Windows Form o controlli host all'area del documento. Combinando opportunamente codice e diversi gruppi di controlli è possibile associare i controlli a dati, ottenere informazioni dall'utente e rispondere alle azioni dell'utente.
I controlli host sono classi che estendono alcuni degli oggetti del modello a oggetti di Word ed Excel. Ad esempio, il controllo host Microsoft.Office.Tools.Excel.ListObject fornisce tutte le funzionalità dell'oggetto Microsoft.Office.Interop.Excel.ListObject di Excel. Tuttavia, il controllo host Microsoft.Office.Tools.Excel.ListObject presenta inoltre eventi e funzionalità di associazione dati aggiuntivi.
Per ulteriori informazioni, vedere Cenni preliminari sugli elementi e sui controlli host e Cenni preliminari sui controlli Windows Form nei documenti di Office.
Combinazione di VBA con le personalizzazioni a livello di documento
È possibile utilizzare codice VBA in un documento appartenente a una personalizzazione a livello di documento di Visual Studio Tools per Office. In tutti i progetti a livello di documento è possibile chiamare codice VBA nel documento dall'assembly di personalizzazione. Nei progetti a livello di documento per Microsoft Office System 2007 è inoltre possibile configurare il progetto in modo da consentire al codice VBA nel documento di chiamare il codice nell'assembly di personalizzazione.
Per ulteriori informazioni, vedere Combinazione di VBA con le personalizzazioni a livello di documento.
Gestione di documenti in un server
Diversi aspetti della personalizzazione a livello di documento possono essere gestiti anche nei server in cui non è stato installato Microsoft Office Word oppure Microsoft Office Excel. È ad esempio possibile accedere e apportare modifiche ai dati memorizzati nella cache dei dati di un documento. È inoltre possibile gestire l'assembly di personalizzazione di Visual Studio Tools per Office associato a un documento. Ad esempio, è possibile rimuovere a livello di codice l'assembly da un documento affinché quest'ultimo non esegua più il codice. È inoltre possibile collegare un assembly a un documento a livello di codice.
Per ulteriori informazioni, vedere Gestione dei documenti di un server utilizzando la classe ServerDocument.
Personalizzazione dell'interfaccia utente delle applicazioni di Microsoft Office
Per personalizzare l'interfaccia utente di Word ed Excel è possibile utilizzare una personalizzazione a livello di documento.
Microsoft Office 2007 e 2003
Per Microsoft Office System 2007 e 2003, l'interfaccia utente può essere personalizzata nei modi seguenti:
Aggiunta di controlli host o controlli Windows Form all'area del documento.
Per ulteriori informazioni, vedere Controlli host di Word, Controlli host di Excel e Cenni preliminari sui controlli Windows Form nei documenti di Office.
Aggiunta di un riquadro delle azioni al documento.
Per ulteriori informazioni, vedere Cenni preliminari sul riquadro delle azioni.
Aggiunta di smart tag al documento.
Per ulteriori informazioni, vedere Cenni preliminari sugli smart tag.
Word 2007 ed Excel 2007
Per Word 2007 ed Excel 2007, l'interfaccia utente può essere personalizzata anche nei modi seguenti:
Aggiunta di schede personalizzate alla barra multifunzione.
Per ulteriori informazioni, vedere la classe Cenni preliminari sulla barra multifunzione.
Aggiunta di gruppi personalizzati a una scheda incorporata della barra multifunzione.
Per ulteriori informazioni, vedere Procedura: personalizzare una scheda incorporata.
Word 2003 ed Excel 2003
Per Word 2003 ed Excel 2003, l'interfaccia utente può essere personalizzata anche nei modi seguenti:
Aggiunta di barre degli strumenti e di elementi della barra degli strumenti personalizzati.
Per ulteriori informazioni, vedere Procedura: creare barre degli strumenti di Office a livello di codice.
Aggiunta di menu e di voci di menu.
Per ulteriori informazioni, vedere Procedura: creare menu di Office a livello di codice.
Per ulteriori informazioni sulla personalizzazione dell'interfaccia utente delle applicazioni di Microsoft Office, vedere Personalizzazione dell'interfaccia utente di Office.
Vedere anche
Attività
Procedura: creare e modificare proprietà personalizzate di un documento
Procedura: leggere e scrivere nelle proprietà dei documenti
Concetti
Combinazione di VBA con le personalizzazioni a livello di documento
Gestione dei documenti di un server utilizzando la classe ServerDocument