Přidat otázku mezi oblíbenéZasílat nové odpovědi e-mailemVyřešeno Jak se odkázat na button, když mám jeho jméno ve stringu (C#)

Zdravim, dělám si prográmek a narazil jsem na malý problém, nevím jak se odkázat na jednotlivé buttony pomocí jména, které mám uložené ve stringu.
Vypotil jsem ze sebe kód, viz níže. Bohužel nefunguje podle mých představ, abych byl přesnější nefunguje vůbec. :-D

Button stisknutéTlačítko = (Button)sender;
btn1 = stisknutéTlačítko.Name;
Control tl1 = this.Controls[btn1];
tl1.ForeColor = Color.Black;
tl1.BackgroundImage = Properties.Resources.Sova;
Jsou zobrazeny jen nové odpovědi. Zobrazit všechny
Předmět Autor Datum
To v C# sa polia indexuju podla stringov? Controls[btn1] ??? WTF http://stackoverflow.com/questions…
MM.. 25.05.2016 20:51
MM..
Čerpal jsem odtud: http://stackoverflow.com/questions/12969453/how-to -access-a-button-using-its-na…
001 25.05.2016 20:55
001
Dobre ked to ma ten class implementovane tak sa to da ale vobec to robit nepotrebujes, vobec nepracu… nový
MM.. 25.05.2016 20:58
MM..
Pokud je na tom formu, tak tam být musí. nový
Wikan 25.05.2016 20:59
Wikan
Moze byt v podforme. Kdesi som to teraz videl ked som googlil ten podivny collection, ze to tam byt… nový
MM.. 25.05.2016 21:00
MM..
Čemu říkáš podform? MDI Child? Tak to tam nejspíš opravdu nebude, ale to bych ani nebral jako obsah… nový
Wikan 25.05.2016 21:07
Wikan
Ja neviem vidis co tam ma za maglajz, a ziadny test na chyby / error navratove hodnoty / excepsny, d… poslední
MM.. 25.05.2016 21:14
MM..
Omlouvám se, kód, který jsem napsal funguje, ale měl jsem pod tlačítky panel, na který jsem už dávno… nový
001 25.05.2016 21:05
001
Sice funguje, ale děláš to zbytečně složitě. nový
Wikan 25.05.2016 21:08
Wikan

Omlouvám se, kód, který jsem napsal funguje, ale měl jsem pod tlačítky panel, na který jsem už dávno zapomněl (vrátil jsem se k tomu projektu po dlouhé době).

Stačilo změnit this. na panel1.

Button stisknutéTlačítko = (Button)sender;
btn1 = stisknutéTlačítko.Name;
Control tl1 = panel1.Controls[btn1];
tl1.ForeColor = Color.Black;
tl1.BackgroundImage = Properties.Resources.Sova;

Děkuji za rady, zamykám.

Zpět do poradny Odpovědět na původní otázku Nahoru