我在 Visual Studio 2010 中使用 dotnetbar。
我添加了 dotnetbar 滑动面板来形成。单击按钮时,面板滑入;按下取消按钮时,面板滑出。但是,当窗体最大化或重新调整大小时,滑动面板不会改变它的大小。滑动面板锚模式是左+右+上+下(我不需要在填充停靠模式下)。
此外,如果我们在滑动面板可见时运行表单并最大化表单,那么它会锁定到它的锚点并最大化。如果我们在滑动面板不可见的情况下最大化表单,它无法检测到表单大小并且无法锚定。
我在 Visual Studio 2010 中使用 dotnetbar。
我添加了 dotnetbar 滑动面板来形成。单击按钮时,面板滑入;按下取消按钮时,面板滑出。但是,当窗体最大化或重新调整大小时,滑动面板不会改变它的大小。滑动面板锚模式是左+右+上+下(我不需要在填充停靠模式下)。
此外,如果我们在滑动面板可见时运行表单并最大化表单,那么它会锁定到它的锚点并最大化。如果我们在滑动面板不可见的情况下最大化表单,它无法检测到表单大小并且无法锚定。
我有同样的问题,这就是我解决它的方法。
首先,您必须计算表单矩形和滑动面板之间的差异,就像您必须考虑对象的原始位置 x,y 一样。
在表单的调整大小事件之后,添加以下内容
If Not SlidePanel1.IsOpen Then
SlidePanel1.OpenBounds = New System.Drawing.Rectangle(OriginalX, OriginalY, Me.DisplayRectangle.Width - DifferenceWidth, Me.DisplayRectangle.Height - DifferenceHeight)
End If
OriginalX
、OriginalY
和是必须手动声明或设置的变量和常量DifferenceWidth
。DifferenceHeight