【发布时间】:2016-10-09 15:17:36
【问题描述】:
我尝试在ListView 中绑定 Checkbox Checked 属性,如下所示:
<asp:CheckBox ID="chk_holi_sal" runat="server" Class="chk_holi_sal" Checked="<%#:Item.HasSal%>" />
public bool HasSal
{
get { return SALARY_CALC == 1; }
}
但我得到以下编译器错误:
编译器错误消息:CS0030:无法将类型“字符串”转换为“布尔”
我检查了<%#:Item.HasSal%> 的值,发现它等于True 或False
为什么我总是收到这个错误?
根据答案使用Eval 而不是利用strongly type 值的ListView 控件,我面临新的异常:
【问题讨论】:
-
使用 Eval(Item.HasSal)
-
正如错误代码所示,“Checked”是一个布尔值(true 或 false)。因为您在 eval 中调用了 .ToString() ,所以您有一个字符串。您需要使用布尔值
标签: c# asp.net entity-framework listview .net-4.5