Skip to main content
 首页 » 编程设计

c#之无法将类型为 'System.Web.UI.WebControls.Button' 的对象转换为类型 'System.Web.UI.WebControls.CheckBox'

2024年01月01日40落叶无声

我正在尝试使用复选框让用户选择要从 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”。

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

任何人都可以提供任何帮助,我们将不胜感激,谢谢。此外,任何可能需要的额外代码我都会尽力提供。感谢任何可以提供帮助的人。

我得到了错误

请您参考如下方法:

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