【问题标题】:Winform SplitContainers redraw issueWinform SplitContainers 重绘问题
【发布时间】:2011-07-10 22:41:24
【问题描述】:

我在另一个 SplitContainer 的面板中添加了一个 SplitContainer。当拆分器移动时,一切都会重新绘制。但是,如果主SplitConainer 的大小被主窗体的最大化/恢复按钮更改,则内部SplitContainer 的大小调整将无法正常工作。

如果我移动拆分器,它会重新绘制一切正常。我尝试使每个 SplitPanel SizeChanged 事件中的所有内容都无效,但没有运气。你有什么想法吗?

【问题讨论】:

    标签: c# .net winforms user-interface splitcontainer


    【解决方案1】:

    我认为这就是原因。将复杂的布局简化为几个简单的布局后,问题就消失了。

    http://social.msdn.microsoft.com/forums/en-US/windowsuidevelopment/thread/25181bd5-394d-4b94-a6ef-06e3e4287527/

    一项小调查表明,当 Windows 达到某个特定的嵌套级别时,它会停止发送 WM_SIZE。换句话说,如果您在父窗口中处理 WM_SIZE 时尝试调整它们的大小,它不会将 WM_SIZE 发送到您的子窗口。根据用户的东西/更新/服务包,它停止传播 WM_SIZE 的最大嵌套级别可能从 15 到 31 不等,在最新的 XP 32 位/sp2 下甚至更高(实际上无法访问)。 但在 XP x64 下仍然太少,而且在某些 Vista 版本下,其他消息仍然会发生一些类似的丑陋事情。

    所以这肯定是一个 Windows 错误。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2014-07-28
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2011-11-05
      • 2013-04-26
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多