Übergeben von Parametern von einer Methode an eine andere Methode der Taste.klicken Sie auf
Habe ich eine main-Funktion, wo ich parse die textbox text-Werte, dann gebe ich diese Werte an eine andere Methode.
Nach dem ausführen der ersten Berechnung, dann möchte ich weitergeben, diese Parameter auf eine andere Taste Funktion.
Will ich weisen Sie int valueOF1, int valueOF2
dieser Methode public void testfunction(object sender, EventArgs ea)
von der Hauptmenü-Schaltfläche.
Wie kann ich dies tun?? Danke für Eure Hilfe.
Dies ist der code:
private void b_calculate_Click(object sender, EventArgs e)
{
int valueOF1;
int.TryParse(t_Offset1.Text, NumberStyles.Any,
CultureInfo.InvariantCulture.NumberFormat, out valueOF1);
int valueOF2;
int.TryParse(t_Offset2.Text, NumberStyles.Any,
CultureInfo.InvariantCulture.NumberFormat, out valueOF2);
int pRows = PrimaryRadGridView.Rows.Count;
int sRows = SecondaryRadGridView.Rows.Count;
if (pRows == 1 && sRows == 1)
{
calculatePS(valueOF1, valueOF2);
}
}
private void calculatePS(int valueOF1, int valueOF2)
{
MessageBox.Show("You are using : P-S");
//Do some calculation & go to the next function ///
Button2.Enabled = true;
Button2.Click += testfunction; //Here i want to pass the valueOF1 & valueOF2
}
public void testfunction(object sender, EventArgs ea)
{
MessageBox.Show("you...!");
Button2.Enabled = false;
}
- testFunction ist ein Event-Handler. Seine Signatur kann nicht geändert werden, um Ihre Parameter. Man könnte eine gemeinsame Funktion callable von calculatePS und von testFunction
ref
können verwendet werden, denke ich. (weiß nicht viel über ihn)- Könnten Sie mir erklären, wie kann ich
common function callable from calculatePS and from testFunction
- Die Antwort von Matthias wäre gut für Sie ist.
Du musst angemeldet sein, um einen Kommentar abzugeben.
Können Sie erklären
valueOF1
undvalueOF2
als class-Felder, und so können Sie aus verschiedenen Methoden.Hier ist, wie der code Aussehen könnte:
Zusätzlicher Hinweis:
int.TryParse
gibt einebool
Wert, der Ihnen sagt, ob das Parsen erfolgreich war. Im Falle der Rückgabe istfalse
können Sie verarbeiten wollen, der parse-error, irgendwie, anstatt weiterhin mit dem normalen Fluss.Button2.Click += testfunction;
einmal, wenn die form erstellt wird (zum Beispiel, binden Sie das Ereignis mithilfe des Formular-Designers). Keine Notwendigkeit zu zuweisen jedes mal, wennb_calculate
geklickt wird.int valueOF1, int valueOF2
bekomme ich die vom Benutzer eingegebenen Wert oder 0?? (Ich weiß, es klingt dumm, aber möchte nur wissen)testfunction
handler, Sie würde Holen Sie sich die neuesten eingegeben (und hoffentlich richtigen) Werte vonvalueOF1
undvalueOF2
, weil Sie zugewiesen werden, innerhalb derb_calculate_Click
MethodeTryParse
zurückgegebentrue
.calculatePS
Methode, da Sie nicht mehr benötigt werden (die Werte sind gehalten, die in den Feldern).Innerhalb Ihrer Funktion calculatePS ändern Sie die Letzte Zeile wie folgt
testfunction;
?