일부 변수를 기반으로 레이아웃에 영향을주는 내 InitializeComponent에 일부 조건이 있습니다. 불행히도 응용 프로그램을 다시 작성할 때마다이 코드가 이전 상태로 되돌아갑니다. Designer 인터페이스를 기반으로이 코드가 다시 생성됩니까? 이 일을 막을 수있는 방법이 있습니까?IntializeComponent 계속 덮어 씁니다
0
A
답변
2
예, InitializeComponent
은 완전히 IDE에서 생성됩니다. 그것도 망치려고하지 마라. 당신이 추가/일부 컨트롤을 제거 할있어서, 조건부 논리를InitializeComponent
에 자동 생성 된 통화 후 컨트롤의 생성자 에서 그것을 할 경우
.
조건부 항목이 디자인 타임에 사용 또는 사용되지 않는 기능에 의존하는 경우 (예 : 다른 사람이 사용자의 컨트롤을 사용하고 디자인에서 설정하려고하는 컨트롤이 동작하는 방식에 영향을주는 속성을 제공 한 경우) 시간), 생성자는 디자인 뷰에서 사용자가 선택한 시간까지 이미 실행 되었기 때문에 생성자를 사용하면 작동하지 않습니다. 이 경우 OnLoad
메소드를 덮어 쓰고 거기에 로직을 입력하십시오 (또는 Load
이벤트 자체를 처리하는 등 여러 가지 변형이 있습니다.이 방법을 사용하면이 스킨을 사용할 수 있습니다).
+0
컨트롤을 사용하는 다른 개발자를 계획하는 경우 이벤트를 처리하는 것보다 OnLoad를 오버라이드하는 것이 좋습니다. 그러나 철저하고 정확한 대답은 +1입니다. –
관련 문제
- 1. ibdata1 파일을 덮어 씁니다.
- 2. Automake : DEFAULT_INCLUDES를 덮어 씁니다.
- 3. java.util.logging.Logger가 데이터를 덮어 씁니다.
- 4. 메시지를 덮어 씁니다.
- 5. Netbeans GUI에서 paintComponent를 덮어 씁니다.
- 6. EditText 선택 기능을 덮어 씁니다.
- 7. textarea 자바의 내용을 덮어 씁니다.
- 8. . NET에서 최신 파일을 덮어 씁니다.
- 9. g_tree_insert가 모든 데이터를 덮어 씁니다.
- 10. File.CreateText (C#) 파일을 덮어 씁니다.
- 11. 리베이스의 병합은 커밋을 덮어 씁니다.
- 12. 데이터 세트가 서로 덮어 씁니다.
- 13. web.config를 통해 WebClientProtocol.Timeout을 덮어 씁니다.
- 14. NSIS가 바로 가기를 덮어 씁니다.
- 15. BlazeDS/FlexDataservice 끝점을 덮어 씁니다.
- 16. app.config를 기본 코드로 덮어 씁니다.
- 17. 텍스트가있는 Div는 이미지를 덮어 씁니다.
- 18. gettext .mo 파일을 덮어 씁니다.
- 19. svn : externals의 파일을 덮어 씁니다.
- 20. strncpy 기존 문자열을 덮어 씁니다.
- 21. drupal의 핵심 파일을 덮어 씁니다.
- 22. PSFTP : 기존 파일을 덮어 씁니다.
- 23. 서버의 .htaccess 파일을 덮어 씁니다.
- 24. DelayedJob : run_at가 우선 순위를 덮어 씁니다.
- 25. WiX - 항상 이전 버전을 덮어 씁니다.
- 26. Zend_Session :: start가 application.ini 설정을 덮어 씁니다.
- 27. gitattributes 설정으로 인해 unstaged 커밋을 덮어 씁니다.
- 28. jar 내보내기 중에 manifest.mf를 ecplise로 덮어 씁니다.
- 29. new 연산자가 기존 객체를 덮어 씁니다.
- 30. 캔버스가 TextBlock의 TextAlignment 값을 덮어 씁니다.
실제로 이것은 의도적으로 설계된 동작입니다. 코드를 다른 곳에 두어야합니다. 조건부 속성 설정을 많이해야하는 경우 디자이너를 전혀 사용하지 않을 수도 있습니다. –