728x90
반응형
728x170
▶ Load 이벤트시 Visible 속성을 false로 설정하는 방법
• Visible 속성은 Load 이벤트시 설정의 의미가 없다.
• Load 이벤트시 Visible = false가 실행되지만,
내부적으로 Load 이벤트를 호출한 SetVisibleCore 메소드에 의해 Visible 속성이 다시 true로 설정되기 때문이다.
• 결론적으로 폼이 숨겨지지 않고 표시된다.
728x90
▶ Shown 이벤트 또는 타이머를 이용해 Visible 속성을 false로 설정하는 방법
• 잠시나마 보였다가 숨겨지는 깜박임 현상이 발생한다.
300x250
▶ SetVisibleCore 메소드를 재정의하는 방법
• 문제점은 폼을 다시 보이게 할 방법이 없다는 점이다.
#region 표시 설정하기 - SetVisible(visible)
/// <summary>
/// 표시 설정하기
/// </summary>
/// <param name="visible">표시 여부</param>
protected override void SetVisibleCore(bool visible)
{
base.SetVisibleCore(false);
}
#endregion
▶ SetVisibleCore 메소드와 Dummy 폼을 사용하는 방법
• 메인 폼을 Dummy 폼으로 설정하고 Application.Run 메소드에서 호출한다.
• Dummy 폼은 SetVisibleCore 메소드를 재정의해서 숨긴다.
• 실제 작업을 하는 폼이 메인 폼의 역할을 수행하게 한다.
예를 들어 Dummy 폼은 NotifyIcon과 ContextMenu만 포함하고 모든 기능은 실제 메인 폼에서 수행하는 구조를 만든다.
728x90
반응형
그리드형(광고전용)
'C# > WinForm' 카테고리의 다른 글
[C#/WINFORM] ImageConverter 클래스 : Image 구하기 (0) | 2014.12.02 |
---|---|
[C#/WINFORM] ListBox 클래스 : 특정 행으로 스크롤하기 (0) | 2014.12.02 |
[C#/WINFORM] ListView 클래스 : 특정 행으로 스크롤하기 (0) | 2014.12.02 |
[C#/WINFORM] ListView 클래스 : 컬럼 헤더 클릭시 정렬하기 (0) | 2014.12.01 |
[C#/WINFORM] ListView 클래스 : 행 배경색 설정하기 (0) | 2014.12.01 |
[C#/WINFORM] TextBox 클래스 : 마지막 문자로 스크롤하기 (0) | 2014.12.01 |
[C#/WINFORM] 색상 값 구하기 (0) | 2014.11.29 |
[C#/WINFORM] 트레이 상단에 폼 위치 설정하기 (0) | 2012.10.22 |
[C#/WINFORM] Form 클래스 : CheckForIllegalCrossThreadCalls 정적 속성을 사용해 크로스 스레드(Cross-Thread) 예외 방지하기 (0) | 2012.10.07 |
[C#/WINFORM] C# 코드에서 자바 스크립트 함수 처리 결과 사용하기 (0) | 2011.10.09 |
댓글을 달아 주세요