2009-02-19 5 views
1

Comment activer les styles visuels lorsque mon projet est une bibliothèque de classes et qu'il est chargé dans un programme dans lequel Application.EnableVisualStyles() n'est pas défini. J'ai lutté avec cela pendant 2 jours maintenant. C'est en C# (j'ai vu quelques exemples pour les anciens C++ et quelques choses qui peuvent fonctionner pour VB, mais rien n'a été clairement défini pour C# et si c'est même possible).Activer les styles visuels pour une bibliothèque de classes

J'ai essayé d'exécuter Application.EnableVisualStyles() à partir de ma bibliothèque de classes avant de créer des contrôles, mais il semble que cela doit être fait avant qu'une Application.Run() soit terminée, et je n'ai pas le contrôle quand un Application.Run() est appelée car elle est en cours d'installation dans une application tierce en tant que plugin (Virtual Infrastructure Client de VMware).


J'ai essayé de créer un fichier manifeste et après avoir compilé la bibliothèque de classe I lien dans le fichier manifeste à mon ProgressBar.dll avec: mt.exe -manifest ProgressBar.dll.manifest -outputresource: ProgressBar.dll ; 2

Sauf que cela ne fonctionne pas. Si je crée une application fictive qui utilise ma bibliothèque de classes ProgressBar et lier le manifeste à l'exe de cette application, les styles visuels apparaissent (en fait, il est long de spécifier le fichier manifeste dans la section Propriétés du projet, Application).

À l'heure actuelle, mes boutons sont moche, mais le plus gros problème est que le contrôle ProgressBar ne fonctionne pas dans le style Marquee. Je vais très bientôt devoir faire mon propre ProgressBar de style Marquee ou simplement lancer un GIF animé à sa place. En ce qui concerne les boutons, je suppose que je peux commencer à utiliser les boutons Infragistics afin d'obtenir un résultat plus cohérent.

S'il vous plaît et merci comme toujours!

Répondre

0

Comment pouvez-vous être sûr qu'il n'y a pas encore de contrôles créés lorsque vous appelez Application.EnableVisualStyles? Créé ne signifie pas nécessairement que les contrôles sont également visibles sur un formulaire.

Puisque vous travaillez avec un composant tiers fermé, j'investirais mon temps plutôt que de créer mes propres commandes si l'aspect et la convivialité sont si importants.

Questions connexes