C# - pobranie nazwy elementu menu


(Marco700) #1

Witam.

W C# (Windows Forms) dopiero zaczynam i mam takie pytanie. Tworzę sobie proste menu, zmianę koloru tła itp.

Jak pobrać nazwę elementu z menu by móc na jej podstawie zmienić odpowiednio np. kolor tła.

W Visual C++ robiłem to w taki sposób:

...

if(((ToolStripButton^)sender)->Name=="toolStripButton1")

      BackColor=System::Drawing::Color::Red;

...

Jak napisać to w C#? Próbowałem kilka kombinacji ale bezskutecznie :).


(Tomek Matz) #2
if (((ToolStripButton)sender).Name.CompareTo("toolStripButton1") == 0) BackColor = System.Drawing.Color.Red;

Jeśli nie masz pewności, że sender to zawsze będzie obiekt klasy ToolStripButton to możesz wówczas użyć takiej składni, żeby ustrzec się przed wyjątkiem

if (sender is ToolStripButton && ((ToolStripButton)sender).Name.CompareTo("toolStripButton1") == 0) BackColor = System.Drawing.Color.Red;

(Marco700) #3

Dzięki, dokładnie o coś takiego mi chodziło! :slight_smile: