保存在运行时创建的标签
Posted
技术标签:
【中文标题】保存在运行时创建的标签【英文标题】:Saving labels created at run-time 【发布时间】:2013-10-30 17:03:50 【问题描述】:我正在使用此代码向我的表单添加标签,但是当我关闭表单时,它们都消失了。有没有办法保存标签或创建一个每次都会加载并恢复标签的文本文档?
Private x As Integer = 12
Private y As Integer = 180
Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click
Dim lbl As New label
lbl.Size = New System.Drawing.Size(159, 23) 'set your size
lbl.Location = New System.Drawing.Point(x, y) 'set your location
lbl.Text = (TextBox1.Text) 'set your name
Me.Controls.Add(lbl) 'add your new control to your forms control collection
x += 10 'arbitrary value, you could adjust y, too
End Sub
【问题讨论】:
创建一个自定义类来保存 Size()、Location() 和 Text()。没有将该类的实例添加到 List()。使用 XmlSerializer 将列表保存到 XML 文件。当表单打开时,反转该过程以将标签放回原处。 这里是一个例子:***.com/a/19143430/1070452 【参考方案1】:要使它们持久化,您需要在设计时从工具箱中添加它们。
看看这个以获得说明:
http://www.homeandlearn.co.uk/csharp/csharp_s1p6.html
或者,您需要有一个配置文件,每次添加控件时都保存该文件,并带有适当的属性,然后您可以在表单加载时从配置文件中重新创建这些文件。
(我假设您使用的是 Winforms?)
【讨论】:
我知道谢谢,但我正在做一个项目,人们可以在需要时添加标签以上是关于保存在运行时创建的标签的主要内容,如果未能解决你的问题,请参考以下文章