Den moderne arbejdsplads er i stigende grad afhængig af mødelokaler til at fremme samarbejde, men dette skift medfører også stigende sikkerhedsudfordringer.
Ovenstående virker ikke, og kan aldrig komme til det. Identifiers (Button + name) kan ikke specificeres som i ovenstående, da identifier skal være angivet på compile time, og name først har et indhold på runtime.
Men måske er der en anden udvej.
Måske kan du benytte en dictionary (System.Collections.HashTable eller lign.) til at gemme dine knapper i f.eks.:
Dim map As New System.Collections.Specialized.HybridDictionary(True) map.Add("Button" + name, new Button())
Når du så skal benytte din knap, kan du gøre noget i denne retning
Dim btn As System.Windows.Forms.Button = CType(map("Button" + name), System.Windows.Forms.Button)
' Benyt btn til et eller andet...
Dette kan gøres mere elegant med Generics, hvis du benytter .NET 2.0. I det viste benyttes en HybridDictionary. Med strenge som keys, kan den gøres case-insensitive, og derudover benytter den en liste ved få elementer og en dictionary ved mange.
Synes godt om
Ny brugerNybegynder
Din løsning...
Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.