我有三個類(Class A,Class B和Class C)。 B類擁有一種方法(方法1),而C類則擁有一種方法(方法2)。 A類的主要目的是在各自的類中調用每種方法。返回關鍵字不停止執行方法
類A調用方法1 B類內:
private void buttonSave_Click(object sender, EventArgs e) {
Process[] processes = Process.GetProcessesByName("WINWORD");// Kill Word Process
ProcessForm processForm = new ProcessForm();
Validation validateForm = new Validation();
validateForm.Validate(this);//Call to method 1
processForm.CreateDocument();//Call to method 2 still gets called after a return from this method...?
}
保持測試是否變量爲真或假,並且如果它是真實的我需要它返回並NOT返回的條件調用類(A類),直到值爲假:
//Class B
if (textIsEmpty == true)
{
MessageBox.Show("Fill in the text fields");
return;//Shouldnt this halt execution?
}
我的問題是方法2仍然是從類C調用即使返回。我只能推測這與回到一個單獨的課程有關。
幫助將不勝感激。
期待什麼這隻意味着return語句只會停止在那裏它被調用的方法的執行,並不會終止整個進程 – Sherlock
放了看看會發生什麼,控件是否會在那裏執行,大部分是否定的,因爲'MessageBox.Show'是一個阻塞調用。這個'Method1'永遠不會返回,'Method2'永遠不會被調用 –
[Event-driven programming](https://en.wikipedia.org/wiki/Event-driven_programming)FTW! –