Salut
------
J'ai une question très spécifique dont j'imagine que seules quelques personnes pourront avoir la réponse. Le problème est simple à comprendre mais long à expliquer, désolé.

J'utilise dans des tas de projets depuis 2010 une bibliothèque de classe contenant des contrôles winforms personnels. Actuellement, la version est en framework 3.5.
Pour l'utilisation, il me suffit, dans VS, d'ouvrir la boîte à outils (fenêtre quelconque en mode designer), de créer un nouvel onglet et d'y faire glisser ma dll et sa xml (intellisense) depuis le bureau.
Et tous mes contrôles apparaissent dans l'onglet ajouté, avec leur icône, et sont parfaitement fonctionnels en mode design et en mode programmation.
Ma dernière utilisation est un projet récent développé sous VS2019 en framework 4.8 et ça fonctionne toujours parfaitement.

Par contre, maintenant je tente de créer en VS2022 un nouveau projet en .net6 (en .net5 c'est pareil, j'ai essayé): Si je glisse mes contrôles dans la boîte à outil, ils apparaissent avec leur icône mais en grisé (non activés) et j'ai un message disant qu'ils ne peuvent pas être activés sous cette version dotnet.
Quelque part, c'est logique, on est sur un autre type de support.

Donc, réaction logique, je décide de migrer mes contrôles en .net6 (ou 5): Pour faire un essai, je crée une nouvelle solution comportant un projet dll et un projet winform (pour tester les contrôles): Je crée un bête contrôle hérité de ComboBox, juste pour tester, je lui donne un nom et je surcharge simplement sa propriété BackColor pour avoir une visualisation du fonctionnement.

Je compile, le contrôle apparaît dans la boîte à outils en tant qu'élément de la solution: Je mets la fenêtre en mode design et je peux glisser ce contrôle "personnalisé" dans la fenêtre et sa couleur de fond est bien remplacée: Donc, niveau principe, ça fonctionne sans le moindre problème comme en framework.

Le problème survient lorsque j'ouvre une nouvelle solution winform .net6 et que j'y fait glisser, comme d'habitude, la dll obtenue dans la boîte à outils: Là, j'ai un "bing" d'avertissement et rien ne se passe, pas même le moindre message d'erreur ni même mon contrôle en grisé: Mon contrôle n'apparaît simplement pas, la dll n'est manifestement même pas reconnue.

Bref, en .net6 (que je ne connais pas du tout) j'arrive à faire des composants personnalisés qui fonctionnent dans un projet qui fait partie de la même solution que mes contrôles, mais ma dll n'est plus "portable" dans une autre solution. Je ne vais quand même pas inclure le projet source dans chaque nouvelle solution .net6.

J'ai du louper quelque chose au niveau de la compilation, mais j'ai fait des tonnes d'essais et je n'ai pas trouvé.

Si quelqu'un a une idée sur la façon de créer une dll de contrôles et de la faire accepter dans une solution tierce, je suis preneur.

Merci d'avance,
Claude