2013-02-26 3 views
1

Visual Studio 2010을 사용 중이고 양식을 만들 때 FormName.Designer.cs 파일에 자동 생성 코드가 모두 표시됩니다. 빈 클래스를 생성* .Designer.cs 파일이 없습니다.

  1. :

    이 내가 다음 작업을 수행 할 때, 나는 그러나, 원하는 것을 정확하게이다.

  2. 서브 클래스 System.Windows.Forms.Control
  3. 디자이너에게 System.Windows.Forms.ImageList을 추가하십시오.
  4. 이미지를 디자이너의 ImageList에 추가하십시오.

자동으로 생성 된 코드는 모두 클래스 파일에 삭제되며, 나는 *.Designer.cs 파일을 가져 오지 않습니다.

VS를 항상 *.Designer.cs 파일로 사용하려면 어떻게해야합니까?


업데이트

클래스가 부분 선언 및 하위 클래스 UserControl을가 충분하지 않습니다. 새 항목을 만들 때 "UserControl"을 선택해야하고 designer.cs 파일이 있습니다.

+0

VS는 항목 템플리트의 일부인 경우에만 생성합니다. 이것을 테스트하지는 못했지만 디자이너 파일을 수동으로 만들면 (모든 것이 잘된다면) 관련 상위 파일로 축소됩니다.이 경우 파일을 사용해야합니다. –

+1

빈 클래스 (1 단계)를 만든 다음'Control' (2 단계)에서 파생 된 경우 갑자기'ImageList' 컨트롤을 추가하기 위해'designer.cs' 파일을 어떻게 갖게됩니까? VS는 일반적으로 새 양식을 추가하기 전까지 디자이너 파일을 작성하지 않습니다. –

+0

@sneakthief, 그것은 문제인 designer.cs 파일을 생성하지 않습니다. 내가 하나를 원하는. 도구 상자에서 컨트롤을 끌 수있는 디자인보기가 있지만 designer.cs 파일은 없습니다. – Jay

답변

4

이는 디자이너가 VS2005 이전의 Visual Studio 버전에서 작동했으며, 아직 부분 클래스을 지원하지 않았습니다. Form 또는 UserControl에서 파생 된 클래스에 대한 별도의 Designer.cs 파일 만 얻을 수 있습니다. 부분 키워드를 사용하여 선언했습니다.

무엇이 근본적인 이유인지는 모르지만 분명히 Control 클래스의 아주 단순한 디자이너와 관련이 있습니다. Form 및 UserControl 디자이너는 훨씬 더 매력적입니다.

실제로 아무 문제가 없으므로 실제 문제는 아닙니다. 특히 사용자 정의 컨트롤을 만들 때 실제로는 다른 구성 요소 나 컨트롤이 필요하기 때문에 그다지 큰 타격은 없습니다. 속성 창이 작동하도록하는 것이 편리하지만, 개인적으로는 솔루션 탐색기 창에서 클래스를 두 번 클릭하면 기본적으로 디자이너 페이지를 가져 오는 데 상당한 신경을 쓸 필요가 없습니다. 내가 "crud!"라고 소리 쳤던 횟수를 잃어 버렸다. 기계에서.

관련 문제