Avatar billede phreazdialer Nybegynder
26. marts 2008 - 23:46 Der er 5 kommentarer og
1 løsning

Omdøbe kontrol?

Hvordan omdøber jeg en ToolStrip (Eller andre kontroller) via min programkode?

Jeg har forsøgt med følgende:

ToolStrip TempToolStrip = new ToolStrip();
ToolStripContainer1.TopToolStripPanel.Controls.Add(TempToolStrip);
TempToolStrip.Name = "MyToolStrip";

Formålet skulle være at jeg herefter kan referere til min ToolStrip med det nye navn "MyToolStrip", men jeg får en fejl om at den ikke eksisterer. Hvis jeg i stedet prøver med det oprindelige navn "TempToolStrip" fungerer det som det skal, men målet var jo at omdøbe den.

En anden løsning kunne være hvis jeg allerede ved oprettelsen af min ToolStrip kunne navngive den ud fra værdien i en streng:

String ToolStripName = "MyToolStrip";
ToolStrip ToolStripName = new ToolStrip();
Avatar billede aaberg Nybegynder
27. marts 2008 - 07:57 #1
ToolStrip TempToolStrip = new ToolStrip();
ToolStrip MyToolStrip = TempToolStrip;

Nu refererer TempToolStrip og MyToolStrip til samme kontrol.
Avatar billede phreazdialer Nybegynder
27. marts 2008 - 08:17 #2
Tak for forslaget, men jeg kan se at jeg vist ikke fik oplyst i første omgang at det nye navn på min ToolStrip kun findes som streng (Via udtræk fra database), så jeg kan desværre ikke bruge forslaget.

Formålet er at loope igennem et databaseudtræk, og oprette en række ToolStrips med tilhørende ToolStripItems (Både Buttons, DropDownButtons osv.), altsammen baseret på navne i databasen.
Jeg har selv efterhånden fået bikset det meste af koden sammen, men når jeg først looper igennem oprettelsen af de enkelte ToolStrips, skal jeg senere referere til dem enkeltvis for at tilføje items.
Avatar billede aaberg Nybegynder
27. marts 2008 - 08:42 #3
Jeg foreslår du ligger alle dine ToolStrip kontroller ind i en Dictionary<string, ToolStrip>. Så kan du referere til en ToolStrip ved hjælp af en streng.

//oprette en dictionary.
Dictionary<string, ToolStrip> myDictionary = new Dictionary<string, ToolStrip>();

//Tilføje en ToolStrip.
myDictionary.Add("myToolStrip", new ToolStrip());

//Senere i koden kan du referere til din ToolStrip på følgende måde.
myDictionary["myToolStrip"].Items.Add(osv...);
Avatar billede phreazdialer Nybegynder
28. marts 2008 - 01:10 #4
Det er helt perfekt, det er netop det jeg ledte efter. Jeg har nu fået lavet hele mit menusystem ved hjælp af din foreslåede metode.
Send et svar så jeg kan acceptere det, og du kan få dine points.
Avatar billede aaberg Nybegynder
28. marts 2008 - 07:59 #5
svar :-)
Avatar billede phreazdialer Nybegynder
28. marts 2008 - 09:57 #6
Værsgo' og tak for hjælpen :)
Avatar billede Ny bruger Nybegynder

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.

Loading billede Opret Preview
Kategori
IT-kurser om Microsoft 365, sikkerhed, personlig vækst, udvikling, digital markedsføring, grafisk design, SAP og forretningsanalyse.

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester