ループを使用する代わりに、for
再帰を使用して現在のカウントを関数に渡します。
void checkBoxMethod (object sender, EventArgs args)
{
CheckBox box = (CheckBox)sender;
int number = (int)box.Tag;
myRecursiveMethod(number);
}
private void myRecursiveMethod(int count)
{
//do whatever stuff I need to do
if (!timeToExitTheMethod)
myRecursiveMethod(count++);
}
あなたはループで何をしているのか正確に何の説明もfor
していませんし、あなたの質問はあまり意味がありません (つまり、あなたがほのめかしているチェックボックスは何ですか?)。例。再帰メソッドの終了ポイントをコーディングする必要があることに注意してください (そうしないと、スタック オーバーフローが発生するまで呼び出されます)。
関数が呼び出された回数をカウントするだけの場合は、次のようにします。
public class MyClass
{
private int _myCounter = 0;
void checkBoxMethod (object sender, EventArgs args)
{
CheckBox box = (CheckBox)sender;
//do whatever you need to do
_myCounter++;
}
}
要件がより具体的である場合は、より具体的な提案を行うことができます。