2012-12-15 2 views
0

하나의 사용자 정의 컨트롤 인스턴스가 두 가지 다른 형태로 실행될 수 있습니까?하나의 usercontrol 인스턴스를 여러 폼에 가질 수 있습니까?


다음 작업을 수행했지만 작동하지 않았습니다 (컨트롤이 마지막 양식에만 표시됨).

static void Main() 
     { 
      Application.EnableVisualStyles(); 
      Application.SetCompatibleTextRenderingDefault(false); 

      var control = new UserControl1(); 

      var form2 = new Form2(); 
      form2.UserControl1 = control; 
      form2.Show(); 

      var form1 = new Form1(); 
      form1.UserControl1 = control; 

      Application.Run(form1); 
     } 

답변

1

아니요. 최소한 정상적인 .Net 작동 상태. 텍스트 상자를 만들어 form1에 추가 한 다음 동일한 텍스트 상자 인스턴스를 form2에 추가하면 form1의 텍스트 상자가 그대로 form2로 이동합니다. 그것이 작동하더라도, location, parentform 등과 같은 속성은 두 형식 사이에서 borked 될 것입니다.

공통 인스턴스 데이터가 필요할 경우, 클래스 싱글 톤이 청구서에 맞을 수 있습니다.

+0

흠 맞아요. 새 프로젝트에서 직접 해보았습니다. (편집 참조). 어쨌든 고마워. – Enrico

관련 문제