Interfaccia RibbonMenu
Rappresenta un menu in una scheda della barra multifunzione o nel menu Microsoft Office.
Spazio dei nomi: Microsoft.Office.Tools.Ribbon
Assembly: Microsoft.Office.Tools.Common (in Microsoft.Office.Tools.Common.dll)
Sintassi
'Dichiarazione
<GuidAttribute("59dc7f42-aca2-484a-9622-1ee34a6cfd7d")> _
Public Interface RibbonMenu _
Inherits RibbonControl, RibbonComponent, IComponent, IDisposable
[GuidAttribute("59dc7f42-aca2-484a-9622-1ee34a6cfd7d")]
public interface RibbonMenu : RibbonControl,
RibbonComponent, IComponent, IDisposable
Il tipo RibbonMenu espone i seguenti membri.
Proprietà
Nome | Descrizione | |
---|---|---|
ControlSize | Ottiene o imposta le dimensioni del menu. | |
Description | Ottiene o imposta il testo visualizzato nel menu corrente. | |
Dynamic | Ottiene o imposta un valore che specifica la possibilità di modificare il menu in fase di esecuzione. | |
Enabled | Ottiene o imposta un valore che indica se l'oggetto RibbonControl è abilitato. (Ereditato da RibbonControl) | |
Id | Ottiene una stringa utilizzata da Microsoft Office per identificare l'oggetto RibbonControl. (Ereditato da RibbonControl) | |
Image | Ottiene o imposta l'immagine visualizzata nel menu. | |
ImageName | Ottiene o imposta il nome utilizzabile nel gestore eventi LoadImage per identificare un'immagine per il menu. | |
Items | Ottiene l'insieme dei controlli presenti nel menu. | |
ItemSize | Ottiene o imposta le dimensioni dei controlli nel menu. | |
KeyTip | Ottiene o imposta il tasto di scelta da tastiera del menu. | |
Label | Ottiene o imposta il testo visualizzato dal menu. | |
Name | Ottiene o imposta il nome di RibbonComponent. (Ereditato da RibbonComponent) | |
OfficeImageId | Ottiene o imposta l'immagine da visualizzare nel menu se si desidera utilizzare un'icona incorporata di Microsoft Office. | |
Parent | Ottiene un oggetto RibbonComponent che rappresenta l'elemento padre di RibbonComponent. (Ereditato da RibbonComponent) | |
Position | Ottiene o imposta la posizione del menu, se questo è incluso nel menu Microsoft Office. | |
Ribbon | Ottiene l'oggetto Ribbon di primo livello contenente la gerarchia dei controlli. (Ereditato da RibbonComponent) | |
RibbonUI | Infrastruttura. Ottiene l'istanza di IRibbonUI fornita dall'applicazione Microsoft Office al codice di estensibilità della barra multifunzione. (Ereditato da RibbonComponent) | |
ScreenTip | Ottiene o imposta il testo del suggerimento visualizzato quando il puntatore del mouse viene passato sul menu. | |
ShowImage | Ottiene o imposta un valore che indica se l'immagine associata al menu è visibile o meno. | |
ShowLabel | Ottiene o imposta un valore che indica se l'etichetta del menu è visibile o meno. | |
Site | Ottiene o imposta l'oggetto ISite associato a IComponent. (Ereditato da IComponent) | |
SuperTip | Ottiene o imposta il testo del suggerimento su più righe visualizzato quando il puntatore del mouse viene passato sul menu. | |
Tag | Ottiene o imposta dati specifici dell'applicazione associati a RibbonComponent. (Ereditato da RibbonComponent) | |
Title | Ottiene o imposta il titolo visualizzato quando si espande un menu aggiunto al menu Microsoft Office. | |
Visible | Ottiene o imposta un valore che indica se RibbonControl è visibile. (Ereditato da RibbonControl) |
In alto
Metodi
Nome | Descrizione | |
---|---|---|
Dispose | Esegue attività definite dall'applicazione, ad esempio libera, rilascia o reimposta risorse non gestite. (Ereditato da IDisposable) | |
PerformDynamicLayout | Chiama il metodo Microsoft.Office.Core.IRibbonUI.InvalidateControl del controllo padre se l'oggetto RibbonComponent dispone di un elemento padre dinamico, ad esempio un menu dinamico, e il layout non è sospeso. (Ereditato da RibbonComponent) | |
PerformLayout | Effettua la chiamata a Microsoft.Office.Core.IRibbonUI.InvalidateControl se RibbonComponent dispone di un elemento padre e il layout non è sospeso. (Ereditato da RibbonComponent) | |
ResumeLayout() | Inverte l'effetto del metodo SuspendLayout. (Ereditato da RibbonComponent) | |
ResumeLayout(Boolean) | Inverte l'effetto del metodo SuspendLayout. (Ereditato da RibbonComponent) | |
SuspendLayout | Impedisce all'applicazione di Microsoft Office di aggiornare lo stato dei controlli nella barra multifunzione. (Ereditato da RibbonComponent) |
In alto
Eventi
Nome | Descrizione | |
---|---|---|
Disposed | Rappresenta il metodo che gestisce l'evento Disposed di un componente. (Ereditato da IComponent) | |
ItemsLoading | Si verifica quando controlli o menu annidati vengono caricati nel menu corrente in fase di esecuzione. |
In alto
Note
Visual Studio crea un oggetto RibbonMenu quando si trascina un controllo Menu dalla scheda Controlli barra multifunzione di Office della Casella degli strumenti alla finestra di progettazione della barra multifunzione.
È possibile creare RibbonMenu in fase di esecuzione tramite il metodo CreateRibbonMenu dell'oggetto RibbonFactory.
Sono disponibili due modi per accedere all'oggetto RibbonFactory:
Mediante la proprietà Factory della classe Ribbon. Utilizzare questo approccio dal codice della classe Ribbon.
Mediante il metodo Globals.Factory.GetRibbonFactory. Utilizzare questo approccio dal codice all'esterno della classe Ribbon.
Attività comuni
Nella tabella riportata di seguito vengono elencati membri utili per le attività comuni, tutte eseguibili in fase di progettazione. Alcune di queste attività possono essere eseguite in fase di esecuzione soltanto prima che la barra multifunzione venga caricata nell'applicazione di Office o prima che il controllo venga aggiunto a un menu dinamico in fase di esecuzione. Per ulteriori informazioni, vedere Cenni preliminari sul modello a oggetti della barra multifunzione.
Task |
Membro |
---|---|
Visualizzare un'immagine sul menu. |
Utilizzare la proprietà Image o ImageName. È inoltre possibile riutilizzare le immagini visualizzate nei controlli incorporati della barra multifunzione. Per eseguire questa operazione, impostare OfficeImageId sull'ID di un'immagine incorporata di Microsoft Office da visualizzare come icona del menu. |
Modificare le dimensioni del menu. |
Impostare la proprietà ControlSize sul valore desiderato. Per un menu di grandi dimensioni, ad esempio, impostare la proprietà su Microsoft.Office.Core.RibbonControlSize.RibbonControlSizeLarge. |
Modificare le dimensioni degli elementi del menu. |
Impostare la proprietà ItemSize sul valore desiderato. Per visualizzare elementi di grandi dimensioni, ad esempio, impostare la proprietà su Microsoft.Office.Core.RibbonControlSize.RibbonControlSizeLarge. |
Consentire le modifiche al menu in fase di esecuzione, ad esempio l'aggiunta di controlli. |
Impostare la proprietà Dynamic su true. |
Aggiungere, rimuovere o accedere ai controlli nel menu. |
Utilizzare la proprietà Items. |
Aggiungere un menu al menu Microsoft Office, a un gruppo oppure a un altro controllo in grado di contenere menu. |
Aggiungere RibbonMenu alla proprietà Items del menu Microsoft Office, al gruppo o al controllo. |
Nota
Questa interfaccia è implementata da Visual Studio Tools per Office Runtime. Non deve essere implementata nel codice. Per ulteriori informazioni, vedere Cenni preliminari su Visual Studio Tools per Office Runtime.
Utilizzo
Nella presente documentazione viene descritta la versione di questo tipo utilizzata nei progetti di Office destinati a .NET Framework 4. Nei progetti destinati a .NET Framework 3.5, questo tipo potrebbe avere membri diversi e gli esempi di codice forniti per il tipo potrebbero non funzionare. Per la documentazione relativa a questo tipo nei progetti destinati a .NET Framework 3.5, vedere la sezione di riferimento seguente nella documentazione di Visual Studio 2008: https://go.microsoft.com/fwlink/?LinkId=160658.
Esempi
Nell'esempio seguente viene illustrato come aggiungere un sottomenu a un menu esistente e come popolarlo in fase di esecuzione.
Per un esempio più dettagliato in cui vengono aggiornati i controlli in fase di esecuzione e in cui è coinvolta l'acquisizione di dati dal database di esempio AdventureWorks tramite query LINQ, vedere Procedura dettagliata: aggiornamento dei controlli di una barra multifunzione in fase di esecuzione.
Per eseguire questo esempio di codice, effettuare innanzitutto le seguenti operazioni:
Aggiungere un elemento Barra multifunzione (finestra di progettazione visiva) a un progetto Office.
Aggiungere un gruppo alla scheda personalizzata.
Aggiungere un menu al gruppo.
Impostare la proprietà (Name) del menu su CustomerMenu.
Impostare la proprietà Label del menu su Customers.
Impostare la proprietà Dinamico del menu su true.
In tal modo, è possibile aggiungere e rimuovere i controlli nel menu in fase di esecuzione dopo che la barra multifunzione è stata caricata nell'applicazione Office.
Private Sub PopulateCustomerMenu()
' Add two sub-menus to EmployeeMenu and populate each sub-menu
' First sub-menu
Dim subMenu1 As RibbonMenu = Me.Factory.CreateRibbonMenu()
subMenu1.Dynamic = True
subMenu1.Label = "A - M"
subMenu1.Items.Add(Me.Factory.CreateRibbonToggleButton())
CType(subMenu1.Items.Last(), RibbonToggleButton).Label = "Hall, Don"
subMenu1.Items.Add(Me.Factory.CreateRibbonToggleButton())
CType(subMenu1.Items.Last(), RibbonToggleButton).Label = "Valdez, Rachel"
CustomerMenu.Items.Add(subMenu1)
' Second sub-menu
Dim subMenu2 As RibbonMenu = Me.Factory.CreateRibbonMenu()
subMenu2.Dynamic = True
subMenu2.Label = "N - Z"
subMenu2.Items.Add(Me.Factory.CreateRibbonToggleButton())
CType(subMenu2.Items.Last(), RibbonToggleButton).Label = "Robinson, Alex"
CustomerMenu.Items.Add(subMenu2)
End Sub
private void PopulateCustomerMenu()
{
// Add two sub-menus to EmployeeMenu and populate each sub-menu
// First sub-menu
RibbonMenu subMenu1 = this.Factory.CreateRibbonMenu();
subMenu1.Dynamic = true;
subMenu1.Label = "A - M";
subMenu1.Items.Add(this.Factory.CreateRibbonToggleButton());
((RibbonToggleButton)subMenu1.Items.Last()).Label = "Hall, Don";
subMenu1.Items.Add(this.Factory.CreateRibbonToggleButton());
((RibbonToggleButton)subMenu1.Items.Last()).Label = "Valdez, Rachel";
CustomerMenu.Items.Add(subMenu1);
// Second sub-menu
RibbonMenu subMenu2 = this.Factory.CreateRibbonMenu();
subMenu2.Dynamic = true;
subMenu2.Label = "N - Z";
subMenu2.Items.Add(this.Factory.CreateRibbonToggleButton());
((RibbonToggleButton)subMenu2.Items.Last()).Label = "Robinson, Alex";
CustomerMenu.Items.Add(subMenu2);
}
Vedere anche
Riferimenti
Spazio dei nomi Microsoft.Office.Tools.Ribbon
Altre risorse
Cenni preliminari sulla barra multifunzione
Finestra di progettazione della barra multifunzione
Cenni preliminari sul modello a oggetti della barra multifunzione