[Quote=引用 11 楼 xiaohu85917 的回复:]
在Panel上加载一个窗体,类似MDI窗体,原以为像Delphi一样直接把form的parent设置为panel就可以实现.在写代码时没问题,运行时弹出error:Top-level control can not be added to a control(无法将顶级控件添加到控件),查看form的属性后发现要把TopLevel = false才能实现.最后的代码如下:
private void ShowFormAsChild(XtraForm AFrom, Control AParent)
{
this.Text = "Product Listing - " + AFrom.Text;
for (int i = 0; i < panelControl1.Controls.Count; i++)
if (panelControl1.Controls[i] is XtraForm)
((XtraForm)panelControl1.Controls[i]).Hide();
AFrom.FormBorderStyle = FormBorderStyle.None;
AFrom.TopLevel = false;
AFrom.Parent = AParent;
AFrom.Dock = DockStyle.Fill;
AFrom.Show();
AFrom.BringToFront();
AFrom.Focus();
}