新人新问题,请大家帮帮忙啊!!!
我想在窗体上动态地加载一系列的控件组比如label ,textbox ,picturebox,combobox ,tabcontrol等,
程序中开始时定义了System.Windows.Forms.Control的对象theControl,然后以theControl去逐个判断它真实的类型,比如是一个textbox 还是一个label,
然后再根据得到的具体的类型对这种类型的控件进行后续的操作。
现在的问题是,比如一个label1的控件,我用theControl判断了它属于label 类,那么我就想对label1的属性进行操作了,比如设置它的AutoSize了,BackStyle了等等,但我现在操作的仍然是theControl对象啊,它又不据有和支持这些属性所以也就无法设置了。那么我应该怎样从theControl对象转到实际我想要操作的控件类型上呢?
不知道上面描述清楚了没有,下面是部分代码:
If EachCtl(0) = "0" Then '通过标示判断为 Label
Lbl.Load(nowCtlCount(0) + 1) '将label控件组加一
theControl= Lbl(nowCtlCount(0) + 1) '将Control控件组加一
tmpA = Split(strAr, ",") '分割放置属性的字符串
With theControl
.Text = tmpA(0) 'Control类有此属性
.AutoSize = CBool(tmpA(1)) 'Control类不支持此属性
.BackStyle = CInt(tmpA(2)) ' Control类不支持此属性
End With
else
end if
我是刚从vb转到vb.net上来,正被.net弄得一头雾水。而现在这件事又催得很紧,已经要疯了,请各位一定要帮帮我啊!