比如说我当前打开了Form1(启动窗体) Form2 Form3 Form4...(可能很多)
当前触发了某个事件 我需要只保留Form1 关闭其他所有窗体
获取顶端的窗体GetForegroundWindow,检查不是Form1的话,发送消息关闭掉。
遍历Application.OpenForms
搞错了,Wince下不能这么玩。
其实很简单,用个ArrayList跟踪所有打开的Form就行
不是存窗体名字,而是存引用,比如:
Form2 form2=new Form2();
arrayList.Add(form2);
那么
((Form)arrayList[0起始的下标])
就表示存储的窗体。
窗体名:((Form)arrayList[0起始的下标]).Text
关闭:((Form)arrayList[0起始的下标]).Close();