문제

XP English Machine과 XP Japanese Machine에서 동일한 UI 코드가 실행됩니다. 어떤 이유로 든 - 동작은이 두 컴퓨터간에 다릅니다.

일본 기계에서는 초기 조합 호출 중에 onresize 이벤트가 트리거되고 있습니다 (RESUMELAYOUT 기능에서 생각합니다). 영어 기계에서는 그렇지 않습니다.

내가 정의한 개인 변수의 변경 값을 onresize의 재정의 방법이 있습니다. 구성 요소가 완전히로드되지 않았으므로 (CTOR가 여전히 실행 중임) 이러한 변수는 무효이며 예외가됩니다.

변수가 null인지 아닌지 확인하여 코드를 수정할 수 있지만, 왜 처음부터 호출되는지, 왜이 컴퓨터에서만 발생하는지 이해하고 싶습니다.

인터넷을 검색하는 동안 다른 사람이 게시 한 것과 같은 문제를 발견했지만 해결책이 없습니다 (http://social.msdn.microsoft.com/forums/en/winforms/thread/95aefae4-45d8-4ac5-a8f2-6e2142dfb631).

도움이 되었습니까?

해결책

적절한 공개 : 나는 Hila와 함께 일하고 있으므로 코드를 볼 수있었습니다. 다른 동작의 이유는 autoscalemode라는 제어의 속성 때문입니다. 제어의 기본 클래스 에서이 특성의 값은 autoscalemode.font입니다. 모든 R & D 기계가 동일한 설정 (영어)으로 실행되기 때문에 올바르게 작동하고 버그가 발생하지 않았습니다. 일본 기계로 바꾸는 것은 영어 기계의 다른 글꼴 설정을 의미했습니다. 이것은 문제를 일으켰습니다. 그래서 우리는 자동 저칼로드 속성의 값을 None으로 변경하여 문제를 해결했습니다. 결론:자가 분리 속성을 조심하십시오.

라이센스 : CC-BY-SA ~와 함께 속성
제휴하지 않습니다 StackOverflow
scroll top