RibbonMenu, interface
Représente un menu sur un onglet du ruban ou sur le menu Microsoft Office.
Espace de noms : Microsoft.Office.Tools.Ribbon
Assembly : Microsoft.Office.Tools.Common (dans Microsoft.Office.Tools.Common.dll)
Syntaxe
'Déclaration
<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
Le type RibbonMenu expose les membres suivants.
Propriétés
Nom | Description | |
---|---|---|
ControlSize | Obtient ou définit la taille du menu. | |
Description | Obtient ou définit le texte qui apparaît sur le menu actuel. | |
Dynamic | Obtient ou définit une valeur qui indique si le menu peut être modifié au moment de l'exécution. | |
Enabled | Obtient ou définit une valeur qui indique si ce RibbonControl est activé. (Hérité de RibbonControl.) | |
Id | Obtient une chaîne que Microsoft Office utilise pour identifier cet objet RibbonControl. (Hérité de RibbonControl.) | |
Image | Obtient ou définit l'image affichée sur le menu. | |
ImageName | Obtient ou définit le nom que vous pouvez utiliser dans le gestionnaire d'événements LoadImage pour identifier une image pour le menu. | |
Items | Obtient la collection des contrôles situés sur le menu. | |
ItemSize | Obtient ou définit la taille des contrôles sur le menu. | |
KeyTip | Obtient ou définit la touche clavier d'accès rapide du menu. | |
Label | Obtient ou définit le texte affiché par le menu. | |
Name | Obtient ou définit le nom de ce RibbonComponent. (Hérité de RibbonComponent.) | |
OfficeImageId | Obtient ou définit l'image à afficher sur le menu, si vous souhaitez utiliser une icône Microsoft Office intégrée. | |
Parent | Obtient un RibbonComponent qui représente le parent de ce RibbonComponent. (Hérité de RibbonComponent.) | |
Position | Obtient ou définit la position du menu s'il est affiché sur le menu Microsoft Office. | |
Ribbon | Obtient l'objet Ribbon de niveau supérieur qui contient la hiérarchie des contrôles. (Hérité de RibbonComponent.) | |
RibbonUI | Infrastructure. Obtient l'instance IRibbonUI fournie par l'application Microsoft Office au code d'extensibilité du ruban. (Hérité de RibbonComponent.) | |
ScreenTip | Obtient ou définit le texte info-bulle qui apparaît lorsque l'utilisateur déplace le pointeur sur le menu. | |
ShowImage | Obtient ou définit une valeur qui indique si l'image associée au menu est visible. | |
ShowLabel | Obtient ou définit une valeur qui indique si l'étiquette pour le menu est visible. | |
Site | Obtient ou définit le ISite associé à IComponent. (Hérité de IComponent.) | |
SuperTip | Obtient ou définit le texte info-bulle multiligne qui apparaît lorsque l'utilisateur déplace le pointeur sur le menu. | |
Tag | Obtient ou définit des données spécifiques à l'application associées à ce RibbonComponent. (Hérité de RibbonComponent.) | |
Title | Obtient ou définit le titre affiché lorsque l'utilisateur développe un menu ajouté au menu Microsoft Office. | |
Visible | Obtient ou définit une valeur qui indique si ce RibbonControl est visible. (Hérité de RibbonControl.) |
Début
Méthodes
Nom | Description | |
---|---|---|
Dispose | Exécute les tâches définies par l'application associées à la libération ou à la redéfinition des ressources non managées. (Hérité de IDisposable.) | |
PerformDynamicLayout | Appelle la méthode Microsoft.Office.Core.IRibbonUI.InvalidateControl du contrôle parent si RibbonComponent possède un parent dynamique, tel qu'un menu dynamique, et si la disposition n'est pas interrompue. (Hérité de RibbonComponent.) | |
PerformLayout | Appelle Microsoft.Office.Core.IRibbonUI.InvalidateControl si le RibbonComponent a un parent et que la mise en page n'est pas interrompue. (Hérité de RibbonComponent.) | |
ResumeLayout() | Inverse l'effet de la méthode SuspendLayout. (Hérité de RibbonComponent.) | |
ResumeLayout(Boolean) | Inverse l'effet de la méthode SuspendLayout. (Hérité de RibbonComponent.) | |
SuspendLayout | Empêche l'application Microsoft Office d'actualiser l'état des contrôles sur le ruban. (Hérité de RibbonComponent.) |
Début
Événements
Nom | Description | |
---|---|---|
Disposed | Représente la méthode qui gère l'événement Disposed d'un composant. (Hérité de IComponent.) | |
ItemsLoading | Se produit lorsque les contrôles ou les menus imbriqués sont chargés dans le menu actuel au moment de l'exécution. |
Début
Notes
Visual Studio crée un objet RibbonMenu lorsque vous faites glisser un contrôle Menu de l'onglet Contrôles de ruban Office de la Boîte à outils sur le Concepteur de ruban.
Vous pouvez créer un RibbonMenu au moment de l'exécution à l'aide de la méthode CreateRibbonMenu de l'objet RibbonFactory.
Il existe deux méthodes pour accéder à l'objet RibbonFactory :
En utilisant la propriété Factory de la classe du ruban. Utilisez cette approche depuis le code dans votre classe de ruban.
En utilisant la méthode Globals.Factory.GetRibbonFactory. Utilisez cette approche depuis le code en dehors de votre classe de ruban.
Tâches courantes
Le tableau suivant répertorie les membres qui sont utiles pour les tâches courantes. Toutes ces tâches peuvent être effectuées au moment du design. Certaines de ces tâches peuvent être exécutées uniquement au moment de l'exécution avant de charger le ruban dans l'application Office ou avant d'ajouter le contrôle à un menu dynamique au moment de l'exécution. Pour plus d'informations, consultez Vue d'ensemble du modèle objet de ruban.
Tâche |
Membre |
---|---|
Afficher une image dans le menu. |
Utilisez la propriété Image ou ImageName. Vous pouvez également réutiliser les images qui apparaissent dans les contrôles de ruban intégrés. Pour cela, affectez à OfficeImageId l'ID d'une image Microsoft Office intégrée que vous souhaitez afficher comme icône pour le menu. |
Modifier la taille du menu. |
Affectez à la propriété ControlSize la valeur de votre choix. Par exemple, pour un grand menu, affectez-lui la valeur Microsoft.Office.Core.RibbonControlSize.RibbonControlSizeLarge. |
Modifier la taille des éléments dans le menu. |
Affectez à la propriété ItemSize la valeur de votre choix. Par exemple, pour afficher des éléments plus grands, affectez-lui la valeur Microsoft.Office.Core.RibbonControlSize.RibbonControlSizeLarge. |
Autoriser les modifications du menu au moment de l'exécution (par exemple, pour pouvoir ajouter des contrôles au menu au moment de l'exécution). |
Affectez à la propriété Dynamic la valeur true. |
Accéder aux contrôles dans le menu, ajouter des contrôles au menu ou supprimer des contrôles dans le menu. |
Utilisez la propriété Items. |
Ajouter un menu au menu Microsoft Office, à un groupe ou à un autre contrôle Microsoft Office qui peut contenir des menus. |
Ajoutez un RibbonMenu à la propriété Items du menu, groupe ou contrôle Microsoft Office. |
Notes
Cette interface est implémentée par Visual Studio Tools pour Office Runtime. Elle n'est pas destinée à être implémentée dans votre code. Pour plus d'informations, consultez Vue d'ensemble de Visual Studio Tools pour Office Runtime.
Utilisation
Cette documentation décrit la version de ce type utilisée dans les projets Office qui ciblent .NET Framework 4 et .NET Framework 4.5. Dans les projets qui ciblent .NET Framework 3.5, ce type peut contenir d'autres membres, et les exemples de code qui y figurent sont susceptibles de ne pas fonctionner. Pour obtenir de la documentation sur ce type dans les projets ciblant .NET Framework 3.5, consultez la section de référence suivante dans la documentation Visual Studio 2008 : https://go.microsoft.com/fwlink/?LinkId=160658.
Exemples
L'exemple suivant montre comment ajouter et renseigner un sous-menu dans un menu existant au moment de l'exécution.
Pour obtenir un meilleur exemple permettant de mettre à jour des contrôles au moment de l'exécution et d'exploiter les données de l'exemple de base de données AdventureWorks à l'aide de requêtes LINQ (Language-Integrated Queries), consultez Procédure pas à pas : mise à niveau des contrôles sur un ruban au moment de l'exécution.
Pour exécuter cet exemple de code, vous devez exécuter tout d'abord les étapes suivantes :
Ajoutez un élément Ruban (Concepteur visuel) à un projet Office.
Ajoutez un groupe à un onglet personnalisé.
Ajoutez un menu au groupe.
Affectez la valeur CustomerMenu à la propriété (Name) du menu.
Affectez la valeur Customers à la propriété Label du menu.
Affectez à la propriété Dynamic du menu la valeur true.
Vous pouvez maintenant ajouter des contrôles sur le menu et en supprimer au moment de l'exécution, après le chargement du ruban dans l'application 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);
}
Voir aussi
Référence
Microsoft.Office.Tools.Ribbon, espace de noms