我在另一个SplitContainer的面板中添加了一个SplitContainer。当分割器移动时,一切都重新绘制得很好。但是内部SplitContainer的大小调整不能正常工作,如果主SplitContainer的大小由主表单的最大化/恢复按钮改变。
如果我移动分割器,它会重新绘制所有的东西。我尝试在每个SplitPanel sizechange事件中无效所有内容,但没有运气。你知道吗?
我想这就是原因。在将复杂的布局简化为几个简单的布局后,这个问题就解决了。
http://social.msdn.microsoft.com/forums/en us/windowsuidevelopment/thread/25181bd5 - 394 d - 4 - b94 a6ef - 06 - e3e4287527/
一个小调查显示,Windows停止发送WM_SIZE当它达到一定的嵌套级别。换句话说,当你在父窗口处理WM_SIZE时,如果你试图调整它们的大小,它不会将WM_SIZE发送到你的子窗口。根据用户材料/更新/服务包,它停止传播WM_SIZE的最大嵌套级别可能从15到31不等,甚至在最新的XP 32bit/sp2下更高(实际上无法访问)。但在XP x64下仍然太少,在Vista的某些版本下仍然会出现一些类似的丑陋的消息。
所以肯定是Windows的bug