在UserControl内部的标签不可见



.net 4.6.1。我创建了一个Windows Forms UserControl。我将其更改为继承System.Windows.Forms.Treeview而不是控制。在其中,我添加了(在设计人员中)一个标签,我在控件内确定该标签何时显示标签。控件以形式放置,并在运行时装满树结构(正确完成)。问题在于,在运行时将其可见属性设置为true时未显示标签。

Public Class Treeview111
Inherits System.Windows.Forms.TreeView
...
Public Sub ShowLabel
Label1.Visible=True
End Sub

即使在设计师中设置了可见属性,也未显示标签。我尝试在运行时动态添加标签,但没有运气。我还尝试过将其从朋友更改为公众,但什么都没有。Bringtofront也无济于事。检查了其位置,似乎在逻辑值(45,72)内。

什么也没想到。我想念什么吗?我想实现的目标吗?

多亏了汉斯·帕斯特(Hans Passant)的答复,我指出了正确的方向。我已经通过Visual Studio的UI添加到USERCONTROL中的标签,希望它将将所有必要的代码添加到源文件中,如VS所做的那样。看来VS2013在您从另一个控件中继承的UserControl中添加控件时,并非所有元素都会在源代码中自动添加。在这种情况下

Me.Controls.Add(Label1)

我手动添加了它并解决了问题。

最新更新