【发布时间】:2014-07-08 17:00:34
【问题描述】:
我有一个带有功能区栏的表单,我希望 RibbonPanel 上的控件可以随表单的其余部分一起调整大小。停靠的RibbonControl 可以很好地调整大小,RibbonPanel 也会随之调整大小,但 RibbonPanel 上 Docked/Anchored 的控件不会调整大小。
如何让功能区面板上的控件正确停靠或锚定?
【问题讨论】:
我有一个带有功能区栏的表单,我希望 RibbonPanel 上的控件可以随表单的其余部分一起调整大小。停靠的RibbonControl 可以很好地调整大小,RibbonPanel 也会随之调整大小,但 RibbonPanel 上 Docked/Anchored 的控件不会调整大小。
如何让功能区面板上的控件正确停靠或锚定?
【问题讨论】:
为了解决问题,我在RibbonPanel 控件内放置了一个普通的Panel 控件,并将我想要调整大小的所有控件停靠在该面板中。使用简单的调整大小方法和几个事件处理程序来动态调整该面板的大小,现在的控件 Anchor 和 Dock 通常在 RibbonPanel 上。
Private Sub Form1_Resize(sender As System.Object, e As System.EventArgs) Handles MyBase.Resize
Resize()
End Sub
Private Sub RibbonControl1_SelectedRibbonTabChanged(sender As System.Object, e As System.EventArgs) Handles RibbonControl1.SelectedRibbonTabChanged
Resize()
End Sub
Private Sub Resize()
Select Case RibbonControl1.SelectedRibbonTabItem.Name
Case "RibbonTabItem1"
Panel1.Size = RibbonPanel1.Size
Case "RibbonTabItem2"
Panel2.Size = RibbonPanel2.Size
Case ...
End Select
End Sub
【讨论】: