Microsoft MVP성태의 닷넷 이야기
사용자 지정 컨트롤 생성시 Invalidate, Update, Refresh의 차이점 [링크 복사], [링크+제목 복사]
조회: 6502
글쓴 사람
Syong (ianstory01 at naver.com)
홈페이지
첨부 파일
 
(연관된 글이 1개 있습니다.)

안녕하세요. 사이트를 통해 업무하는데 항상 많은 정보를 얻고 있어서 너무 감사합니다.

응용소프트웨어 전문 프로그래머는 아니지만, 반도체 장비 업계에서 자동화 설비를 담당하다보니,

종종 고객의 요청으로 원하는 디자인으로 사용자 컨트롤을 자주 만들어 사용하고 있었는데,

각종 속성의 변경이나, 이벤트 발생 시에 해당 컨트롤을 다시 갱신하기 위해서 주로 Invalidate를 호출하고 있었는데,

느낌의 차이일 수는 있지만, UI 구성이 복잡해지거나, 많은 컨트롤들을 표시하다보면 종종 갱신이 바로 안되는 것 같은 느낌이 들때가 있어

찾아보다보니 갱신 방법에는 Invalidate, Update, Refresh 세 가지 방법이 있더라구요.

MSDN 만으로는 세 가지의 내부 구동 방식이나, 명확한 성능이나 용도면에서 잘 이해가 되지 않아 문의드립니다.

제가 이해한 바로는 Invalidate는 WM_PAINT에 해당하는 메시지 루프에 추가하여 비동기적으로 작동하는 것 같고,

Update나 Refresh는 동기적으로 작동하는 것 같은데, 그렇다면 Update나 Refresh의 차이는 무엇이고,

제가 이해한 바가 맞다면 많은 컨트롤을 갱신하는 경우에는 오히려 Update나 Refresh가 더 느려질 수 있는 것 같은데 이해한 바가 맞을까요?


[연관 글]






[최초 등록일: ]
[최종 수정일: 2/26/2021]


비밀번호

댓글 작성자
 



2021-02-26 05시02분
아래의 글을 참고하세요.

C# - Control의 Invalidate, Update 차이점
; https://www.sysnet.pe.kr/2/0/12544
정성태
2021-02-27 09시20분
[Syong] 빠른 답변 감사합니다!
[guest]

1  2  3  4  5  6  7  8  9  10  11  [12]  13  14  15  ...
NoWriterDateCnt.TitleFile(s)
5647장성욱4/7/20223902코어지정 CPU사용률 관련 질문 [1]
5646서형주4/6/20223913List에 여러개의 class 객체를 만들어 넣을때, 객체의 method들도 같이 생성되어 메모리를 차지하나요? [1]
5645김인태4/6/20223558윈도우즈 서버의 AD 계정 생성 조건이 있을까요? [1]
5644ㅇㅇ4/6/20224314c# 프로그램을 이용하여 리눅스상에 파일 생성이 가능한가요? [1]
5643유필재4/5/20224185TCP클라이언트 연결 및 통신관련하여 문의드려요 [1]
5642차가워4/4/20224435UdpClient 패킷 수신 문의 [4]
5641장성욱4/4/20224846코어 할당 및 cpu 부하테스트 질문 [7]
5640icoo...4/4/20224374웹가든에서 메모리 동적 업데이트 방법 [1]
5639차가워4/4/20224283c++ 서버 c# 클라이언트 호환 문의 [1]
5638초급4/3/20224584c# sql server 연동 [1]
5637따봉이4/1/20224849Winform Form Load 후 자동 캡쳐관련 [1]파일 다운로드1
5636김철순3/31/20224834WPF에서 Richtext의 View 문의 [5]
5635guest3/30/20224858안정적인 pinning이 가능하네요. [3]파일 다운로드1
5633꿀주세요3/30/20224505선생님 마우스 클릭이벤트 질문이 있습니다. [4]
5632김현수3/30/20224836Remote Desktop으로 접속시 WPF UI 가 다시 그려지는 이벤트를 막을 수 없을까요? [3]
5631김기헌3/24/20224461WPF 컨트롤의 그래픽 처리관련 질문드립니다 [2]파일 다운로드1
5630장성욱3/24/20224294로깅관련 질문입니다. [2]
5629감사합니...3/23/20224554함수에서 예외가 발생하면 try ~ catch처리기를 찾을 때 까지 상위 함수로 계속 올라가나요? [2]
5628홍길동3/23/20225190질문드립니다. [2]파일 다운로드1
5626연준혁3/21/20224420안녕하세요. [3]
5625jaew...3/18/20225356c# 8.0 도서를 구입한 사람입니다. [1]
5624초보자3/17/20224321람다 캡처 관련 문의 [2]
5623한예지 donator3/15/20224696인터프리터 원리가 궁금합니다. [4]
5622김민아3/8/20224633const와 readonly의 명확한 차이가 이게 맞나요? [2]
5621장성욱3/8/20224437c# 로그 관련 질문 [1]
5620김민아3/7/20224470안녕하세요 비관리 객체를 반환하는 메소드 호출 시 궁금한 점이 있어서 질문드립니다 [2]
1  2  3  4  5  6  7  8  9  10  11  [12]  13  14  15  ...