噢!不好意思,少复制了一段:
default:
break;
}

解决方案 »

  1.   

    switch(m.Msg)
    {
    case WM_NCPAINT:
    {
    this.DrawTest();
    break;
    }
    case WM_NCLBUTTONDOWN:
    {
    this.DrawTest();
    break;
    }
    case WM_NCLBUTTONUP:
    {
    this.DrawTest();
    break;
    }
                      default:
                     base.WndProc(ref m);}
      

  2.   

    呵呵...确实如此,因为你把base.WndProc(ref m);会先处理预定的消息循环,而不是你的,放到下面则可以先是你的程序流程问题.
      

  3.   

    但如果按del_c_sharp(摩托~◎~◎~◎) 兄的方法,我的WM_NCLBUTTONDOWN和WM_NCLBUTTONUP消息从此就没有了!
      

  4.   

    噢!不是不是。我原来还多了一个WM_NCHITTEST没处理所以没有。
      

  5.   

    那m.Result怎么用啊?
    我看文档中有"If an application processes this message, it should return zero. ";