C# Forms - 无法将继承的控件移动到 table
C# Forms - Can't move inherited control into table
让用户控件 A
包含按钮 bA
和用户控件 AChild
从 A
继承并包含 TableLayoutPanel
.
如果我想要 ChildA
中继承的按钮 bA
,而不是放在 A
中的位置,而是放在 ChildA
中TableLayoutPanel
,我该怎么办?
我确实将 bA
的可见性从 private
更改为 protected
,但不是 Locked
。但是,当我在 ChildA
内移动继承按钮 bA
时,它可以按预期移动,但不能在 ChildA
的 TableLayoutPanel
内移动。这就像我可以移动 bA
,但不能在 ChildA
内改变它的父项,为什么?任何解决方法?谢谢。
设计器似乎不支持这种功能,但如果您愿意,可以通过编程方式实现。
在 AChild 控件的构造函数中,您只需将按钮添加到 tableLayoutPanel1:
public partial class AChild: A
{
public AChild()
{
InitializeComponent();
tableLayoutPanel1.Controls.Add(bA);
}
}
让用户控件 A
包含按钮 bA
和用户控件 AChild
从 A
继承并包含 TableLayoutPanel
.
如果我想要 ChildA
中继承的按钮 bA
,而不是放在 A
中的位置,而是放在 ChildA
中TableLayoutPanel
,我该怎么办?
我确实将 bA
的可见性从 private
更改为 protected
,但不是 Locked
。但是,当我在 ChildA
内移动继承按钮 bA
时,它可以按预期移动,但不能在 ChildA
的 TableLayoutPanel
内移动。这就像我可以移动 bA
,但不能在 ChildA
内改变它的父项,为什么?任何解决方法?谢谢。
设计器似乎不支持这种功能,但如果您愿意,可以通过编程方式实现。
在 AChild 控件的构造函数中,您只需将按钮添加到 tableLayoutPanel1:
public partial class AChild: A
{
public AChild()
{
InitializeComponent();
tableLayoutPanel1.Controls.Add(bA);
}
}