2
我已經被設置爲Determain一個TabRow的一個TabControl(VB.NET)的高度
Multiline = True
我做我自己的自定義RowsChanged事件
''' <summary>
''' Event that is raised if the rowCount of the control changed.
''' </summary>
Public Event RowsChanged(ByVal sender As System.Object, ByVal e As System.EventArgs)
Private Sub Me_SizeChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Me.SizeChanged, Me.SelectedIndexChanged, Me.ControlAdded, Me.ControlRemoved
If rows <> Me.RowCount Then
rows = Me.RowCount
RaiseEvent RowsChanged(sender, e)
End If
End Sub
現在我可以一個WinForms TabControl註冊該事件。我想知道,一排的高度,所以我可以做一些尺寸計算。有什麼方法可以阻止這種情況?到目前爲止,我只是計算像素,這不是很好。
使用TabControl.GetTabRect()方法找出標籤所在的位置。 GetTabRect(0).Height讓你獲得行高。 –
@HansPassant:測試'GetTabRect'方法 - 這是解決方案。請作爲答覆發佈。 – Neolisk
@HansPassant:我可以繼續Neolisk說的。請添加您的解決方案作爲答案。奇蹟般有效。 –