我有一个数据集,其中一个名为"Reviewed"
.
该数据集已填充,下图显示了它的数据:
现在我试图在 DataGrid 中显示这个数据集:
<ASP:TemplateColumn HeaderText="Reviewed" HeaderStyle-HorizontalAlign="center" HeaderStyle-Wrap="True">
<ItemStyle Wrap="false" HorizontalAlign="center" />
<ItemTemplate>
<ASP:Checkbox Checked='<%# DataBinder.Eval(Container.DataItem, "Reviewed") %>' runat="server" ID="Label22" />
</ItemTemplate>
<EditItemTemplate>
<Asp:Checkbox id="Textbox5" width="40" Checked='<%# DataBinder.Eval(Container.DataItem, "Reviewed") %>' runat="server" />
</EditItemTemplate>
</ASP:TemplateColumn>
我收到以下错误:
异常详细信息:System.InvalidCastException:从“DBNull”类型转换为“Boolean”类型无效。
我做错了什么?问题是 DBNull 来自哪里?
=================================
更新:
谢谢你的好答案。我的主要困惑是“STUPID”XML 可视化工具错误地将已审核字段显示为已选中(如上图所示)。我检查了数据集中的值,发现确实都是 DBNUll。