Auf dem Formular befinden sich mehrere Schaltflächen innerhalb eines Panels. Was ich versuche zu tun ist, aktivieren Sie eine der 64 Tasten mit 2 vorgegebenen Variablen. Die Schaltfläche, die ich aktivieren möchte, hängt davon ab, welche Schaltfläche zuvor ausgewählt wurde. Jede Taste hat den Namen: "button" + # zwischen 1-9 + Buchstaben zwischen A-H. Ich bestimme den Buchstaben mit ASCII-Werten.Wie ruft man eine Schaltfläche mit zwei Variablen in C#?
Beispiel: button3A, Taste 7H usw.
Der Code, den ich Abstürze haben und gibt mir einen Nullwert:
x = Convert.ToInt32(listBox1.SelectedItem.ToString().Substring(0, 1)); x = x + 1;
y = (int)listBox1.SelectedItem.ToString()[1]; y = y + 2;
DB4.Items.Add("" + x + (char)y);
if ((x == 1 || x == 2 || x == 3 || x == 4 || x == 5 || x == 5 || x == 6 || x == 7 || x == 8 || x == 9) && (y == 65 || y == 66 || y == 67 || y == 68 || y == 69 || y == 70 || y == 71 || y == 72))
(this.Controls["button" + x + (char)y] as Button).Enabled = true;
Die vollständige Ausnahmebedingungsnachricht sowie wo es auftritt, wäre hilfreich. – Jacobr365
Sie haben gesagt, dass alle Schaltflächen auf 'panel' platziert sind, Sie aber' button' auf ** Forms controls ** suchen. Sie müssen die ** Bedienelemente ** durchsuchen. – Berkay
try ersetzen listBox1.SelectedItem.ToString() mit listBox1.selecteitem.value – Reddy