C#设置MDI子窗体不可移动

You cannot make the child form stay fixed in the parent form by just chaning a property. You can try catching move events and returning the form in the center every time the user tries to change the position. You can do this by writing the following code in your child form class' code:



protected override void WndProc( ref Message m )

{

  const int WM_NCLBUTTONDOWN = 161;

  const int WM_SYSCOMMAND = 274;

  const int HTCAPTION = 2;

  const int SC_MOVE = 61456;



  if ( (m.Msg == WM_SYSCOMMAND) && (m.WParam.ToInt32() == SC_MOVE) )

    return;

  if ( (m.Msg == WM_NCLBUTTONDOWN) && (m.WParam.ToInt32() == HTCAPTION) )

    return;



  base.WndProc( ref m );

}  
阅读更多
下一篇C# 编码规范和编程好习惯
想对作者说点什么? 我来说一句

没有更多推荐了,返回首页

关闭
关闭