2008-08-28 2 views
4

CF에서의 Winform은 약간 무겁습니다. 많은 윈도우 초기화 작업은 심각한 시간과 메모리를 필요로합니다. 또 다른 문제는 inbuilt 이중 버퍼링이 부족하고 UI 렌더링에 대한 제어력이 부족하다는 점입니다. 이는 프로세서 집약적 인 작업 중에 UI가 사용자에게 렌더링 된 화면의 절반을 응시하게 할 수 있음을 의미합니다. 좋은!Compact Framework - 간단한 GUI 프레임 워크?

가벼운 컨트롤 프레임 워크를 찾으려는이 문제를 완화하려면 이미 발로 차서 만들거나 집에서 만들면 좋을까요?

가벼운 말은 컨트롤의 그림을 완전히 제어 할 수 있고 많은 비싼 창 핸들을 사용하지 않는 컨트롤 라이브러리를 의미합니다.

참고 : UI 스레드에서 너무 많이 실행 중이라고 제안하지 마십시오. 즉 이 아니라입니다.

+0

조금 늦어서 이것을 닫으시겠습니까? – Quibblesome

답변

2

은 : Fuild - Windows Mobile .NET Touch Controls. 룩앤필은 좋지만 디자인 타임은 지원되지 않습니다. 나는 메모리 풋 프린트에 대해 너무 많이 알지는 못한다.하지만 모든 것이 이중 버퍼링되고 성능이 꽤 좋아 보인다.

0

실제로 페인트 이벤트를 무시할 수 있습니다.

그리고 장기 실행 작업을 별도의 스레드로 오프로드하는 것이 좋습니다. 다른 이벤트 중심 프레임 워크와 다르지 않습니다. 페인트 이벤트 처리에 의존하는 모든 것은 그 영향을 받기 쉽습니다.

또한 페인트 이벤트가 발생하는시기를 결정할 수있는 시스템이 없습니다. 이러한 종류의 이벤트는 일반적으로 응용 프로그램 외부 (또는 프레임 워크)의 윈도우 관리자 레이어에서 발생합니다. 너는 너 자신 사건을 처리 할 수 ​​있고 다만 시간의 어떤 일도하지 않는다, 그러나 나는 그것을 추천하지 않을 것입니다.

0

약간 느려서 페인트 이벤트를 제어 할 수 없으므로 프로세서 집약적 인 작업 중에 UI가 사용자에게 렌더링 된 화면 절반을 응시하게 할 수 있습니다.

일반적으로 UI 스레드에서 값 비싼 작업을 수행하는 것은 좋지 않습니다. 반응하여 UI를 유지하기 위해 이러한 작업 ... 내 머리 위로 떨어져 worker thread

1

좋아, 그냥 아이디어가 수행해야

어떻게 동기화 개체를 만드는 방법에 대한, 예를 들어, 응용 프로그램에서 작업자와 GUI 스레드간에 공유되는 중요한 섹션 또는 단일 잠금. 페인트를 덮어 씁니다. 페인팅을 시작할 때 다른 모든 스레드를 차단하여 CPU를 먹는 동안 화면 절반이 그려지지 않도록하십시오.

는 (물론 이것은 당신 사용자에게 예쁜 그림을 제시하는 것은 당신이 필요로하는 가장 중요한 일이라고 가정) 적어도 출발점으로 도움이 될 수 있습니다 내가 다른 일이 가로 질러)

관련 문제