无法将“System.Web.UI.WebControls.Button”类型的对象强制转换为“System.Web.UI.WebControls.CheckBox”类型

时间:2012-10-03 19:25:05

标签: c# asp.net

我正在尝试使用复选框为用户选择要从DataList中删除的项目。 这就是我编码的方式:

protected void deleteItems_Click(object sender, EventArgs e)
{
    foreach(DataListItem item in pricing.Items)
    {
        bool IsChecked;
        IsChecked = ((CheckBox)item.FindControl("Delete")).Checked;
        string rowNum = ((Label)item.FindControl("lblRowNum")).Text;

        if (IsChecked)
        {
            //delete each checked item   
            DB.Execute("DELETE FROM ItemWearablePricing WHERE WearablePriceingID = " + rowNum);
        }
    }
}

无法转换类型为#System; Web.UI.WebControls.Button'的对象键入' System.Web.UI.WebControls.CheckBox'。

我不确定我在做什么导致这种情况,但我确信有人会指出一些显而易见的事情。

任何人都可以提供的任何帮助将不胜感激,谢谢。此外,任何可能需要的其他代码我将尽我所能来提出它。感谢任何可以提供帮助的人。

我收到错误

2 个答案:

答案 0 :(得分:0)

据推测,item.FindControl("Delete")正在返回Button,而不是CheckBox。仔细检查控件的名称。

答案 1 :(得分:0)

html上的“删除”id<asp:Button相关,而不是<asp:CheckBox