Je porte un ancien projet VB6 en C#, en utilisant Winforms. L'original utilise la suite ActiveBar de DataDynamic pour gérer simultanément les modifications de plusieurs éléments dans les barres d'outils, les menus et les rubans de raccourci. Tout l'ancien code doit faire pour modifier le texte d'un élément partagé entre plusieurs menus, une barre d'outils et un menu contextuel est modifier la propriété "Légende" de l'objet "outil".Existe-t-il un moyen de partager un ToolStripMenuItem entre Menus et ToolBars?
Je pense que .NET doit avoir un moyen de partager ToolStripItem
s entre une variété de conteneurs, mais il ne semble pas le faire. Est-ce que je manque quelque chose?
Actuellement, j'ai commencé plusieurs fois avec une variété d'idées, de l'implémentation d'une méthode d'extension Clone
sur des objets ToolStripMenuItem
et d'avoir ma forme garder une trace de chaque partageable. Cela a échoué quand j'ai réalisé que la mise à jour de la copie locale ne mettrait pas à jour les autres (je devrais ajouter des événements de mise à jour complexes qui sont plus de travail que de simplement activer et désactiver chaque élément à la main). J'ai envisagé de créer un moyen de mettre à jour tous les éléments en fonction de son tag. Cela semblait également infaisable.
Quelles techniques avez-vous utilisées dans des situations similaires?
"Menus ne sont jamais affichées simultanément" est pas tout à fait vrai, étant donné que nous avons tous deux 'Toolbar' catégorisés avec 'Menu' et' ContextMenu'. – Crisfole