09. januar 2005 - 17:58
Der er
9 kommentarer og 1 løsning
Finde knap
Hej Jeg har en string med navnet på en button. Ud fra dette navn vil jeg gerne kunne fx. sætte knappens BackColor. Fx. string strNavn = "btnHej"; Button bntValgtKnap = (Button)strNavn; <-- virker ikke btnValgtKnap.BackColor = System.Drawing.Color.FromName("Red"); Hvordan kan man gøre det?
Annonceindlæg fra Barco
Er jeres mødelokaler sikre nok?
Den moderne arbejdsplads er i stigende grad afhængig af mødelokaler til at fremme samarbejde, men dette skift medfører også stigende sikkerhedsudfordringer.
09. januar 2005 - 18:38
#2
Lige en alsides ting: Funktionen af "is" er at checke om et object er af en bestemt datatype, dvs. det virker med alt af datatypen object?
10. januar 2005 - 16:42
#4
Hej igen, har testet det og kan ikke få det til at virke. string strKnap1 = "btn11"; foreach(Control c in Controls) { if(c is Button) { if(c.Name.IndexOf(strKnap1) == 0) { ((Button)c).BackColor = System.Drawing.Color.FromName("Red"); } } } Der sker intet, når koden kører. Knappen btn11 bliver ikke rød.
10. januar 2005 - 16:49
#6
Svarer lige på mit eget spørgsmål - JA, det har noget at sige. Hvis jeg flytter knappen ud af panelet virker det perfekt. Hvordan klarer jeg det så, da knappen SKAL ligge inde i panelet??
11. januar 2005 - 21:29
#8
Eller lave det til en rekursiv funktion der kan bruges til andre knapper... Noget lignende dette her: public void MakeButtonRed(string strKnap, string color, ControlCollection myControls) { foreach(Control c in myControls) { if(c is Button) { if(c.Name.IndexOf(strKnap) == 0) { ((Button)c).BackColor = System.Drawing.Color.FromName(color); } } MakeButtonRed(strKnap, color, c.Controls); } }