2010-03-25 5 views

답변

6

당신은 WPF architecture에에서 들여다 봐도 수 있습니다 그것이 어떻게 설정되는지에 대한 아이디어를 얻으십시오.

특정 질문에 대답하려면 WPF는 유지 모드 그리기 시스템을 사용합니다. 특히 필요한 (필요한) 다시 그리기가 사용자 개입없이 장면 뒤에서 처리된다는 것을 의미합니다.

반면 GDI는 직접 모드를 사용합니다. 즉, 본질적으로 직접 픽셀을 쓰고 어떤 이유로 든 픽셀을 새로 고침해야하는 경우 다시 렌더링해야합니다.

WPF는 이 아니며 실제로는은 실제로 모든 것을 캐시합니다. 이는 다른 것들 사이의 OS 및 메모리 가용성에 따라 다릅니다. 그러나 다시 렌더링해야하는 경우 마지막으로 제공 한 장면 그래프를 사용합니다. 그것은 프로그래머에게 투명합니다. 또한 DirectX를 "사용"한다고해도 기본적으로 해당 기능에 사용 가능하고 구현 된 하드웨어 지원을 사용하기 위해 최선의 노력을 다하고 있습니다. 모든 그래픽 카드와 모든 WPF 기능이 완전히 가속화되는 것은 아닙니다. This question은 여러 가지 렌딩 모드를 구분하고 그 결과가 수반된다는 것을 알려줍니다.

1

WPF의 렌더링은 Windows Forms와 완전히 다르게 처리됩니다. DirectX를 사용하여 자체 렌더링하므로 렌더링에는 Windows Forms보다 이러한 문제가 적습니다.

(이것은, 그러나, 자신의 몇 가지 문제를 일으킬 않습니다 - 특히, 그래픽 카드는 괜찮은 성능을위한 더 높은 요구 사항을 가지고 ...)

관련 문제