문제

프레임 워크의 일부 클래스를보고 반사기를 사용하면 양식과 사용자 컨트롤이 비공개로 만들어지고 부모 클래스에 중첩되어 있음을 알 수 있습니다.

예를 들어, 해당 컨트롤에 특정한 팝업 양식을 사용하는 컨트롤이 있습니다. 현재, 나는 팝업 형태의 친구를 액세스 할 수있게한다. 프레임 워크 방식을 원한다면 개인을 비공개로 만들어 제어 클래스에 둥글게 둥글게 만들었습니다. 그러나이 작업을 수행하면 더 이상 IDE를 사용하여 양식을 설계 할 수 없으며 컴파일하려고 할 때 오류가 발생합니다. 그래서 저는 두 가지 질문이 있습니다.

(1) Microsoft가 마지막 순간에 모든 것을 비공개로 둥지로써 무언가를합니까?

(2) 그들의 방법이 선호하는 방법입니까, 아니면 친구 액세서리를 고수해야합니까?

도움이 되었습니까?

해결책

중첩 된 형태는 올바른 캡슐화를 시행하고 최종 컨트롤이 하나의 멋진 깔끔한 패키지로 끝나는 것을 의미하기 때문에 더 좋습니다. 그 중 어느 것도 걱정하지 않는다면 당신의 길을 계속하고 있습니다. 그러나 적어도 수업 중첩을 시도하려면 다음과 같은 일을 할 수 있습니다.

  1. 디자이너를 사용하여 평소와 같이 클래스 밖에서 중첩 된 양식을 작성하십시오.
  2. 두 번째를 추가하십시오 비어 있는 CLR 예제에서와 같이 개인 중첩 형태로서 1 단계에서 내장 된 형식과 동일한 이름으로 형식.
  3. 코드를 마이그레이션합니다 *.designer.vb 또는 *.designer.cs 두 번째 양식의 생성자에 대한 첫 번째 양식의 경우. 대부분 큰 복사/페이스트 일뿐입니다.
  4. 1 단계에서 양식을 제거하십시오. 변경해야 할 때 사용할 수 있도록 별도의 클래스 라이브러리 프로젝트로 이동하여 보존 할 수 있습니다.
라이센스 : CC-BY-SA ~와 함께 속성
제휴하지 않습니다 StackOverflow
scroll top