Array som property i Visual Studio
Hej,Visual Studio 2012 Express.
I et C# WinForm projekt har jeg en UserControl med flere properties, som kan sættes fra properties-vinduet under design-time.
UserControl'ens ClassName er "Drum".
En property hedder IsSlaveOf, og er defineret som følger:
[Category("Custom")]
public Drum IsSlaveOf
{
get
{
return _isSlaveOf;
}
set
{
_isSlaveOf = value;
}
}
Som det ses kan denne property sættes til en reference af en instans af "Drum".
I mit projekt forefindes adskillige instanser af UserControl'en "Drum".
I properties-vinduet kan jeg i en drop-down-liste så vælge en af de andre instanser, som Visual Studio jo ved findes.
Så lang, så godt.
Nu har "Drum" en anden property, som hedder IsMasterOf, og er defineret som følger:
[Category("Custom")]
public Drum[] IsMasterOf
{
get
{
return _isMasterOf;
}
set
{
_isMasterOf= value;
}
}
Læg mærke til at denne property er et array, dvs., man skal have mulighed for i properties-vinduet at udvælge flere instanser.
Problemet er, at man i properties-vinduet nu får vist en "Drum Collection Editor", hvor man ikke kan vælge eksisterende instanser af "Drum", men kun oprette nye.
Hvis jeg forsøger at indtaste navnet på en eksisterende instans, får jeg en melding om, at denne allerede eksisterer.
Indtil videre har jeg omgået problemet ved manuelt selv at sætte denne property i Designer.cs filen for min hovedform, men det er selvfølgelig ikke den rigtige vej fremover.
Hvordan kan man lave denne property, så det bliver muligt at vælge eksisterende instanser direkte i properties-vinduet?
På forhånd tak for eventuel hjælp!