다른 가상 클래스 ("컨트롤")를 가진 다른 클래스에서 상속 한 클래스가 있습니다.C# Winforms 디자이너가 'new'대신 기본 속성을 호출합니까?
이 속성을 덮어 쓸 수 없으므로 내 속성과 관련된 '새'키워드를 사용하고 있습니다.
런타임에이 속성은 올바른 컨텍스트에서 원하는대로 호출됩니다.
디자이너에서 양식을 열면 디자이너가 '새'컨트롤 대신 base.Controls를 호출합니다.
뭔가 누락되었거나 winforms 디자이너에서이 잘못된 동작입니까?
편집에 대한 자세한 설명은 해당 코드를 추가하십시오. 내 intializecomponent에 다음 코드에 도착하면
public partial class BauerGroupBox : ComponentFactory.Krypton.Toolkit.KryptonGroupBox
{
public BauerGroupBox()
: base()
{
}
public new Control.ControlCollection Controls
{
get
{
MessageBox.Show("GOT THERE");
return this.Panel.Controls;
}
}
}
이 : 나는 내 코드에 새로운 'BauerGroupBox'를 추가하면
BauerGroupBox thisBox = new BauerGroupBox()
thisBox.Controls.Add(something)
, 그것은 잘 작동 나는 다음과 같은 클래스가 있습니다. 그러나 디자이너에서 코드를 열면 (심지어 devenv 디버깅을 사용하는 동안) 메시지 상자가 표시되지 않고 중단 점에 도달하지 않습니다.
내 앱을 실행할 때 중단 점이 발생합니다.
자세한 내용은 내 질문에 편집되었습니다. 기본 컨트롤의 디자인 방식에 따라 사용자가 컨트롤 컬렉션에 직접 추가하는 것을 원하지 않지만 대신 사용자가 컨트롤 컬렉션에 control.panel.controls를 추가하기를 원합니다. 이 작업을 자동으로 수행하기 위해 '경로 통과'를 작성하려고합니다. – greggorob64