有人可以建议替代WinForms SplitContainer的其他控件吗?我不喜欢SplitContainer在选择和拖动时如何显示奇怪的虚线条。我想在用户拖动时调整面板大小,而不是在鼠标向上拖动时调整面板大小,并且在拖动拆分器时不显示任何虚线。基本上就像如何在Vista的Windows资源管理器中完成面板的所有调整大小一样。

这是我正在谈论的点点滴滴:

c# - WinForms:SplitContainer的替代产品?-LMLPHP
(来源:bhslaughter.com)

最佳答案

编写自己的拆分容器UserControl。基本上,您只需将两个面板放到控件上(用于左侧面板和右侧面板),然后让它们之间的空间作为分隔符。在UserControl本身上有一个MouseDown,MouseMove和MouseUp逻辑,您可以轻松地左右移动“拆分器”,这两个面板将在除拆分器之外的所有位置正确地阻止此拆分,因此您可以通过逻辑检查鼠标是否位于拆分器非常简单。

使控件以您希望它在设计模式下起作用的方式进行操作可能会花费一些额外的工作。

09-28 12:33