Comment représenter « options » pour mon architecture de plugin (C # .NET WinForms)
Question
Ok fondamentalement est là où je suis.
J'ai une liste de PropertyDescriptor objets . Ceux-ci décrivent la coutume « Options » champs sur mes Plugins, alias:
public class MyPlugin : PluginAbstract, IPlugin
{
[PluginOption("This controls the color of blah blah blah")]
[DefaultValue(Color.Red)]
public Color TheColor { get; set; }
[PluginOption("The number of blah blah blahs")]
[DefaultValue(10)]
public int BlahBlahBlahs { get; set; }
}
Je l'ai fait toutes les parties dures. J'ai toutes les descriptions, les valeurs par défaut, les noms et les types de ces « options » plug-in personnalisées
MA QUESTION EST: Lorsqu'un utilisateur charge un plug-in, comment dois-je représenter ces options pour les config? Sur l'arrière, je vais utiliser XML pour la configuration, de sorte que ce n'est pas ce que je demande. Je demande à l'extrémité avant: Quel contrôle WinForms dois-je utiliser pour permettre aux utilisateurs de configurer les options d'un plug-in, quand il y aura une quantité inconnue d'options et différents types utilisés etc .?