qq_41712950
2018-12-01 05:18
采纳率: 50%
浏览 529

无法将类型为LiteralControl的对象强制转换为类型.Label

我的代码:
int index = 0;
for ( index = 0; index < this.panel.Controls.Count; index++)
{
if (this.panel.Controls[index].ID==Session["vote"].ToString())
{
Response.Write(this.panel.Controls[index].ID);
Label lab = (Label)this.panel.Controls[index];
sum++;
break;
}

        }
        int j = 0;
        for (j=0; j < this.panel.Controls.Count; j++)
        {
            if (j == index + 1)
            {
                Response.Write(this.panel.Controls[j].ID);
                _Label lab = (Label)this.panel.Controls[j];_
                Response.Write(lab.ID);
                 lab.Text = (Double.Parse(lab.Text) + 1).ToString();
                //Response.Redirect("VoteResult.aspx");
            }
        }
                    问题:第一个强制转换label就没有毛病,第二个就出错,为什么?怎么解决这个问题?
  • 点赞
  • 写回答
  • 关注问题
  • 收藏
  • 邀请回答

1条回答 默认 最新

  • blownewbee 2018-12-01 06:05
    已采纳

    不是所有的人都是中国人。
    第一次 张三转换为中国人,没问题
    第二次,汤姆转换为中国人,不行了。
    你要判断下
    Label lab = null;
    if (this.panel.Controls[j] is Label)
    lab = (Label)this.panel.Controls[j];

    点赞 评论