Je crée un contrôle utilisateur. Voici un exemple de l'une de ses propriétés. Je voudrais que cette propriété soit située dans quelques catégories imbriquées.Propriété de contrôle utilisateur Winforms C++/CLI, attribut de catégorie imbriquée
public:
[Description("Text to display as Rick's Age"), Category("Tiny Rick")]
property String^ Rick_Age
{
String^ get()
{
return RicksAge_Label->Text;
}
void set(String^ newText)
{
RicksAge_Label->Text = newText;
}
}
Pour cet exemple, la propriété Variable_Text
se trouve dans la catégorie Tiny Rick
. Comment est-ce que je peux faire apparaître la catégorie Tiny Rick
dans une autre catégorie? Je voudrais avoir une sorte d'organisation à plusieurs niveaux de propriétés. Par exemple:
- Catégorie:
Special Properties
- Catégorie:
Tiny Rick
- Propriété:
Rick_Age
- Propriété:
- Catégorie:
Morty
- Propriété:
Morty_Age
- Propriété:
Morty_Size
- Propriété:
- Catégorie:
- Catégorie:
Other Properties
- Catégorie:
Jerry
- Propriété:
Jerry_Age
- Propriété:
Jerry_Employed
- Propriété:
- Catégorie:
Courier Flaps
- Propriété:
Item_to_Ship
- Propriété:
- Catégorie:
EDIT-1: Voici un exemple de propriétés imbriquées. C'est le panneau de propriétés pour un contrôle de bouton nouvellement placé (pas un contrôle utilisateur personnalisé). Je comprends que cela ne prouve pas la possibilité d'appliquer une fonctionnalité similaire dans un contrôle utilisateur. C'est simplement une bonne illustration de ce que j'essaie d'accomplir. Les images indiquent la progression de l'accès à la propriété X
:
EDIT-2: Considérant ce que tout peut être fait avec les contrôles utilisateur et propriétés de temps de conception personnalisée (voir this project), je suis enclin croire que mon but est réalisable.Cette image est du lien précédent:
Je ne suis pas sûr que les propriétés de contrôle prennent en charge le concept de catégories imbriquées. Avant de demander "comment je fais ça?", Êtes-vous sûr que c'est possible? Avez-vous un exemple de cela fait avec un autre contrôle, utilisateur ou autre? –
Sauf si vous utilisez Win32/MFC interop, vous ne devez pas utiliser C++/CLI pour le développement de l'interface graphique; C# pourrait être un meilleur choix. –
@DavidYaw Grande question. J'ai mis à jour ma question pour refléter ma réponse. –