728x90
프로그램 필드 테스트중사용자들이 팝업창을 확인만 하고 창을 닫지 않가 지저분해 보여서
원하는 창 말고 전부 닫는 기능을 추가 했다.
//열린 폼 정보 가지고 오기
FormCollection openForms = Application.OpenForms;
//삭제할 더미폼 생성
Form Form2 = new Form();
Form2.Show();
//현재 생성된 폼 정보
Debug.WriteLine($"openForms.Count: {openForms.Count}");
for (int i = 0; i < openForms.Count; i++)
{
Debug.WriteLine($"formName: {openForms[i].Name}");
}
//foreach 사용시 system.invalidoperationexception: '컬렉션이 수정되었습니다. 열거 작업이 실행되지 않을 수도 있습니다.' 에러 발생
//Form1 을 제외한 나머지 폼 전부 닫기
this.Invoke((System.Action)(() =>
{
for (int i = 0; i < openForms.Count; i++)
{
if (openForms[i].Name == "Form1") Debug.WriteLine(null);
else
{
openForms[i].Close();
}
}
}));
하...킹생사...힘들다...
728x90
'C#' 카테고리의 다른 글
C# / 폼 맨 앞으로, 폼 포커스 최상위, SetForegroundWindow (0) | 2022.07.29 |
---|---|
C# / 문자열로 변수 호출하기, C# call variable from string (0) | 2022.07.15 |
C# / 자동 시작 안될 때 경로 지정, Application.ExecutablePath (0) | 2022.06.16 |
C# / Console system.io.ioexception (0) | 2022.06.10 |
C# / 간단하게 로딩창 만들기. (0) | 2022.04.21 |