Ich habe 2 Panels mit Textfeldern und Labels.Ich versuche, die Summe von panel1.texbox1 * panel2.textbox1 + panel1.textbox2 ... und so weiter.Aber wenn ich das Programm ausführen es zeigt mir tatsächlich das Produkt aller Textfelder.Foreach Summe der Textfelder C#
Hier habe ich den Code für Textfelder und Etiketten zu erstellen:
private void comboBox1_SelectedIndexChanged(object sender, EventArgs e)
{
int j,c=1;
int i = comboBox1.SelectedIndex;
if (i != null)
{
for (j = 0; j <= i; j++)
{
Label label = new Label();
label.Text = "w" + c;
label.Location = new System.Drawing.Point(5, 20 + (20 * c));
label.Size = new System.Drawing.Size(30, 20);
panel1.Controls.Add(label);
Label label2 = new Label();
label2.Text = "x" + c;
label2.Location = new System.Drawing.Point(5, 20 + (20 * c));
label2.Size = new System.Drawing.Size(30, 20);
panel3.Controls.Add(label2);
TextBox w = new TextBox();
w.Text = "";
w.Location = new System.Drawing.Point(35, 20 + (20 * c));
w.Size = new System.Drawing.Size(25, 20);
panel1.Controls.Add(w);
TextBox x = new TextBox();
x.Text = "";
x.Location = new System.Drawing.Point(35, 20 + (20 * c));
x.Size = new System.Drawing.Size(25, 20);
panel3.Controls.Add(x);
c++;
}
}
}
Und hier ist der Code, den ich zu verwenden versucht:
private void button4_Click(object sender, EventArgs e)
{
int suma = 0;
foreach (Control w1 in panel1.Controls.OfType<TextBox>())
{
foreach (Control w2 in panel3.Controls.OfType<TextBox>())
{
int textB1 = int.Parse(w1.Text);
int textB2 = int.Parse(w2.Text);
int textB3 = textB1 * textB2;
}
}
textBox3.Text = "" + suma;
}
Haben Sie die erwarteten Werte im Vergleich zu den Werten, die Sie erhalten, überprüft und überprüft? –
Wenn Sie möchten, tb1 * tb1 + tb2 * tb2 usw. - vorausgesetzt, beide Panels enthalten die gleiche Anzahl von Steuerelementen sollten Sie Ihre Schleifen (beide) mit 'für (int i = 0; i(). Count; i ++) 'und dann kann die eigentliche Arithmetik einfach' int sein textB1 = int.Parse (panel1.Controls.OfType () [i]; 'und die zweite ist die gleiche, aber Panel 3. –
@BviLLe_Kid Hat es getan , verschiedene Zahlen bekommen – mihai11