如何在vb.net中更改控件调整大小的方向



我正在VB.NET中制作一个应用程序,我有一个控件(一个特定的标签),它被设置为根据其中的文本自动调整大小

[标签]->
|
v

我希望标签向右和向下调整大小:

&lt-[标签]
|
v

我该怎么做?

编辑:标签显示的是windows帐户名。它与窗口的右侧对齐,因此文本必须自动调整大小并向左展开,而不是向右展开。

我能想到的唯一方法是根据大小的变化调整位置。这里有一些代码可以做到这一点。在调整大小之前,我使用了Tag属性来保持当前大小。然后在Resize事件处理程序中调整了位置。每当标签的文本发生更改时,标签就会获得相应的大小。当调用调整大小时,大小已经更改,比较2将告诉我们更改位置的程度。由于实际的自动尺寸操作已经停止,我没有改变。

Private Sub Label1_TextChanged(sender As System.Object, e As System.EventArgs) Handles Label1.TextChanged
    Label1.Tag = Label1.Size
End Sub
Private Sub Label1_Resize(sender As System.Object, e As System.EventArgs) Handles Label1.Resize
    Dim TempSize As New Size(New Point(0))
    If Label1.Tag Is Nothing Then Label1.Tag = Label1.Size
    TempSize = DirectCast(Label1.Tag, Size)
    Label1.Location = New Point(Label1.Location.X - (Label1.Size.Width - TempSize.Width), Label1.Location.Y)
End Sub

我希望标签向右和向下调整大小:

设置标签的属性

Autosize=False
TextAlign=右上

最新更新