布局方面,建议你用FlowLayoutPanel,不用手工控制控件位置了。假设有一个FlowLayoutPanel1。
站在用户的角度思考问题,与客户深入沟通,找到大箐山网站设计与大箐山网站推广的解决方案,凭借多年的经验,让设计与互联网技术结合,创造个性化、用户体验好的作品,建站类型包括:成都网站设计、做网站、企业官网、英文网站、手机端网站、网站推广、域名与空间、网页空间、企业邮箱。业务覆盖大箐山地区。
先在窗体类中建一个控件的集合:
Dim
TextBoxes
As
New
List(Of
TextBox)
在button1的
Click事件
中写:
For
i
=
1
To
5
'5是每次加入的数量
Dim
newTextBox
As
New
TextBox()
'newTextBox.Size
=
New
Size(100,20)
'
TextBoxes.Add(newTextBox)
'加入我们的集合中
FlowLayoutPanel1.Controls.Add(newTextBox)
'加到窗体的FlowLayoutPanel中去
Next
i
然后button2的Click事件中:
For
Each
itemTextBox
As
TextBox
In
TextBoxes
'这里的itemTextBox.Text就代表每个TextBox里的文本
'如果你需要清空,调用TextBoxes.Clear()和FlowLayoutPanel.Controls.Clear()即可
Next
Public Class ControlValue
Inherits Control
''' summary
''' 获取或设置控件的值。
''' /summary
System.ComponentModel.Browsable(True)
System.ComponentModel.Category("布局")
System.ComponentModel.Description("获取或设置控件的值。")
Public Property Value As String
End Class
Property用于标识一个类成员为属性而不是方法.属性可以被获取,属性在被获以的时候利用get句柄返回其值.属性可以被赋值,这个过程是由set句柄完成的.这两个句柄可以不同时存在.如果只有get而没有set,那属性就是只读的.如果只有set而没有get,那属性就是只写的.
就是定义了两个属性:s_name和s_sex
Overridable 表示这个属性可以被重载。
tag是一个标记。
你想用来做什么标记都行,比使用自定义变量要清晰、易读一些。
比如,你可以在text控件中,用tag属性保存当前光标所在位置,当text重新获得焦点时,读出这个位置信息,就可以把光标定位到离开时的所在的位置。
如果你有多个text,用tag属性就可以比较清晰的标记出,哪个text的光标位置存在哪个tag属性中。
你也可以用自定义的变量来保存,但是不如使用tag属性易读。
也可以用来作为其他标志,就看你的需要了。
如控件自身无法设置滚动条,那就在父容器控件中(如FORM)使用滚动条解决问题。另外,也可将日期控件放在弹出窗口中,