Question

Cela semble avoir été demandé à plusieurs reprises sur ce site, sans vraie réponse:

Accès Ruban Contrôle Programatically dans un XML ruban

Bureau ruban: Comment accéder à un contrôle lorsque le ruban a été créé en utilisant XML

Si un ruban est créé à l'aide de ruban xml, pour autant que je sache, il n'y a pas d'exposition programmatique des composants définis dans ce xml. La seule façon limitée évidente pour changer l'état de ces composants est d'utiliser quelque chose comme un onAction, getContent, événement getImage, et l'élément IRibbonControl offre très peu pour manipuler l'élément en question (sans parler, la plupart de ces fonctions n'exécutées une fois lorsque tout d'abord rendu).

Je suis en train de trouver un moyen d'accéder à ces éléments de programmation ruban xml.

Était-ce utile?

La solution

Il n'y a aucun moyen d'éléments de ruban programmation accès à l'aide XML du ruban. Si vous voulez changer l'état des commandes du ruban - vous devez utiliser IRibbonUI.Invalidate() pour forcer un nouveau rendu de la mise en page ( potentiellement en utilisant les propriétés qui déclenchent des comportements différents au moment du rendu via callbacks ). Cela peut être une bonne chose que vous avez plus de contrôle sur le moment où le dessin se produit si vous changez l'état de plusieurs éléments.

Voir lié ??SO après la mise à jour sur l'état de contrôle interface utilisateur du ruban.

Si vous voulez un accès par programme aux éléments ruban, vous devez utiliser le ruban Designer . Cependant, comme indiqué sur MSDN , le concepteur ne supporte pas tous personnalisations. Certains spéculent que le concepteur enveloppe juste le XML ruban pour vous sous la hotte.

Vous avez juste besoin d'apprendre le rappel utilisé par le ruban au format XML - il n'y a pas d'arbre de commande pour vous d'accéder à

.
Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow
scroll top