无法通过内置转换将类型“string”转换为“System.Windows.Forms.Label”

DataTabledt=pcb.SoftWareMethodBll().Tables[0];intlb=1;for(inti=0;i<dt.Rows.Count;i++)... DataTable dt = pcb.SoftWareMethodBll().Tables[0];
int lb = 1;
for(int i=0;i<dt.Rows.Count;i++)
{
string lblx = "lbl" + lb.ToString();
Label la = lblx as Label;
la.Text = dt.Rows[i]["SoftWareId"].ToString() + "、" + dt.Rows[i]["SoftWareName"].ToString();
lb++;
}
这样等量代换的不是Label控件吧!!
展开
 我来答
styshoo1986
2012-03-30 · TA获得超过893个赞
知道小有建树答主
回答量:832
采纳率:100%
帮助的人:263万
展开全部
lblx 是一个字符串,怎么能转化为Label呢?????
Label la = new Label ();
la.name = lblx ;
之后的代码可以加一点布局的代码,比如location等等。
这样不就行了?

“这样等量代换的不是Label控件吧!!”
这句话什么意思??Label就是这样创建的,你写的代码是错误的,Label是一个类,要创建它的一个对象,就需要实例化它。你写的“Label la = lblx as Label”,意思是尝试将lblx(字符串)转化为Label,这是两个不同的类型,不能这样转化的。
你可以看看C#的一些基础语法书,关于类型转化的内容。
ps:建议先从语法书慢慢看起,一步一步来。
游俊龙
2012-03-30 · TA获得超过279个赞
知道小有建树答主
回答量:372
采纳率:0%
帮助的人:192万
展开全部
DataTable dt = pcb.SoftWareMethodBll().Tables[0];
int lb = 1;
for(int i=0;i<dt.Rows.Count;i++)
{
string lblx = "lbl" + lb.ToString();
Label la = new Label();
la.Name = lblx;
la.Text = dt.Rows[i]["SoftWareId"].ToString() + "、" + dt.Rows[i]["SoftWareName"].ToString();
lb++;
}
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式