其实实现起来也很简单:截获主窗体的WM_MOVE(窗体移动)消息,同时设置附属窗体的位置。
代码如下: protected override void WndProc(ref Message m) { const int WM_MOVE = 0x3; if (m.Msg == WM_MOVE ) { if (frm != null) { frm.Left = this.Left + this.Width; frm.Top = this.Top; return; } } base.WndProc(ref m); }frm即附属窗体的对象