我有一个带有CheckBox
和TextBox
的转发器,我绑定到数据源。根据后面代码的条件,我希望能够动态地停用CheckBox
和TextBox
。
目前这是我在<ItemTemplate>
:
<td>
<asp:CheckBox runat="server"
onclick="checkbox(this); CheckChildren(this);"
Enabled='<%#DataBinder.Eval(Container.DataItem, "DISABLE") %>'
Text='<%#DataBinder.Eval(Container.DataItem, "CTEXT") %>'
Value='<%#DataBinder.Eval(Container.DataItem, "CVALUE") %>' />
</td>
<td>
<asp:TextBox runat="server"
onkeyup="AppendValues(this);"
Enabled='<%#DataBinder.Eval(Container.DataItem, "DISABLE") %>'
Width="35px"
MaxLength="3"
Name='<%#DataBinder.Eval(Container.DataItem, "CNAME") %>'
CValue='<%3DataBinder.Eval(Container.DataItem, "CNTVALUE") %>'>
</asp:TextBox>
</td>
在代码运行时,#DataBinder.Eval(Container.DataItem, "DISABLE")
被设置为后面代码的字符串值“true”,我收到InvalidCastException
异常。
我做错了什么?
答案 0 :(得分:0)
您需要将boolean
值传递给Enabled
属性。试试这样的事情
bool.Parse(DataBinder.Eval(Container.DataItem, "DISABLE").ToString())