기본적으로 2 개의 자식 컨트롤을 만들었고 부모 합성 컨트롤의 너비와 같게 너비를 설정하려고합니다. 문제는 parent.Size 속성을 사용하여이 작업을 수행 할 때 작동하지 않는다는 것입니다. 컨트롤을 추가 할 때만 한 번 작동합니다.winforms의 복합 컨트롤에서 자식 컨트롤의 크기를 변경하는 방법은 무엇입니까?
이벤트가 아닌 속성을 재정의해야합니까? 속성 변경은 크기 조정으로 알릴 수 있다고 생각했습니다. 맞습니까?
편집 :
여기코드는 속성이 작동하지 않습니다,하지만하여 onResize 이벤트가했다.
Q2 : OnResize EventArgs를 사용하여 새 크기를 알려주지 않습니까?
public partial class CollapsableCtrl : UserControl
{
public CollapsableCtrl ()
{
this.ChildCtrl = new CustomCtrl ();
this.Size = new Size (181, 82);
this.Controls.Add (this.ChildCtrl);
}
CustomCtrl ChildCtrl { get; set; }
public new Size Size
{
get { return base.Size; }
set
{
this.ChildCtrl.Size = value;
Invalidate ();
}
}
protected override void OnResize (EventArgs e)
{
base.OnResize (e);
this.ChildCtrl.Size = this.Size;
}
}
현재 수행중인 작업과 작동하지 않는 작동 방식이 명확하지 않습니다. 몇 가지 코드를 보여주십시오. –
죄송합니다, 당신 말이 맞습니다. 일부 코드를 추가했습니다. –