如何遍歷乙個窗體中的某一種控制項 c 實現

2021-04-07 07:28:48 字數 726 閱讀 5309

假設我要遍歷所有的label控制項.我們知道乙個窗體中的所有控制項都是form.controls中的成員,想要得到窗體中的所以成員,可以用foreach來遍歷controls屬性中的物件。注意,controls屬性中包含的物件都是以control基類形式存在的,這就是說我們只能用foreach(control temp in this.controls)來遍歷。對於任何乙個由control派生來的類,或者說是所以控制項,可以用其 gettype()函式來得到控制項的型別。如果要判判斷具體型別需要將型別轉為字串:tempcontrol.gettype().tostring()    它得到的是乙個控制項的完整名字,如:system.windows.forms.label。

現在我們考慮另一種情況,在控制項中,有一些控制項有子控制項如 panel ,groupbox,而這些控制項中又可能包含其它的panel,groupbox,所以我們必須判斷出這些「母控制項」,並用遞迴方法對其中的控制項遍歷!

**如下,在窗體中至少有乙個listbox和 乙個按鈕,注意每個函式接受的引數型別。

private void getlabeinp(panel temp)     //對panel進行遍歷的函式}}

private void getlabeing(groupbox temp)   //對groupbox遍歷}}

private void button1_click_1(object sender, system.eventargs e)  //按鈕的**

}  }

用C 如何遍歷乙個窗體中的某一種控制項

假設我要遍歷所有的label控制項.我們知道乙個窗體中的所有控制項都是form.controls中的成員,想要得到窗體中的所以成員,可以用foreach來遍歷controls屬性中的物件。注意,controls屬性中包含的物件都是以control基類形式存在的,這就是說我們只能用foreach co...

用C 如何遍歷乙個窗體中的某一種控制項

如果我要遍歷所有的label控制項.我們知道乙個窗體中的所有控制項都是form.controls中的成員,想要得到窗體中的所以成員,可以用foreach來遍歷controls屬性中的物件。注意,controls屬性中包含的物件都是以control基類形式存在的 這就是說我們只能用foreach co...

如何在乙個窗體中載入另乙個窗體上的控制項?

如何在乙個窗體中載入另乙個窗體上的控制項?delphi windows sdk api 想在乙個窗體上載入另乙個窗體現存的控制項,請問該怎麼做?如form1有edit1 想在form2中載入form1的edit1,該怎麼辦?謝謝!暈死 這麼基礎的知識 拿form1來做個例子好了 比如要用form2的...