为评估和演示设置选中的值(布尔) [英] Setting checked value for Eval(bool)
问题描述
我有一个属性。
公共BOOL AutoRenew
{
得到;
组;
}
和页面:
<输入类型=复选框选中='<%#的eval(AutoRenew)%>' />
但它始终是检查,即使属性的值是假
。
我尝试了以下变化:
<输入类型=复选框选中='<%#Convert.ToBoolean(EVAL(AutoRenew))%GT;' />
<输入类型=复选框选中='<%#Convert.ToBoolean(EVAL(AutoRenew))==真%GT;' />
<输入类型=复选框选中='<%#(布尔)的eval(AutoRenew)%>' />
但没有任何工程,它不断被检查。我应该恩pression什么样子的?
编辑:这里是页面有问题的一部分:
...
< ASP:ListView控件ID =MyListView=服务器>
<&LayoutTemplate模板GT;
<表类=MS-listviewtable的风格=背景色:白色;>
&所述; TR类=MS-viewheadertr毫秒-vhltr>
百分位类=MS-VH-图标范围=山口>
<输入类型=复选框/>
< /第i
百分位类=MS-VH2>
< DIV CLASS =MS-VH-DIV>< A>培训项目< / A>< / DIV>
< /第i
百分位类=MS-VH2>
< DIV CLASS =MS-VH-DIV>< A>培训任务类型< / A>< / DIV>
< /第i
百分位类=MS-VH2>
< DIV CLASS =MS-VH-DIV>< A>截止日期< / A>< / DIV>
< /第i
百分位类=MS-VH2>
< DIV CLASS =MS-VH-DIV>< A>自动更新< / A>< / DIV>
< /第i
百分位类=MS-VH2>
< DIV CLASS =MS-VH-DIV>< A>培训原因及LT; / A>< / DIV>
< /第i
< / TR>
< TR ID =itemplaceholder=服务器>< / TR>
< /表>
< / LayoutTemplate模板>
<&ItemTemplate中GT;
< TR类=MS-itmhover>
< TD类=MS-VB-itmcbx MS-VB-firstCell>
<输入类型=复选框级=S4-ITM-CBX/>
< / TD>
< TD类=MS-VB-标题>
< DIV CLASS =MS-VB ITX>< A><%#的eval(标题)%>< / A>< / DIV>
< / TD>
< TD类=MS-VB2>
< ASP:DropDownList的ID =TaskTypeDropDownList=服务器>
< / ASP:DropDownList的>
< / TD>
< TD类=MS-VB2><%#的eval(交货期)%>< / TD>
< TD类=MS-VB2的风格=文本对齐:中心;>
<输入类型=复选框选中='<%#Convert.ToBoolean(EVAL(AutoRenew))%GT;' />
< / TD>
< TD类=MS-VB2><%#的eval(TrainingReason)%>< / TD>
< / TR>
< / ItemTemplate中>
...
您使用的是普通的HTML复选框
将数据绑定到您必须使用检查佩林HTML复选框=选中
如果您使用ASP.NET复选框控件,然后你原来的code将工作的顺利开展。
有是纯HTML控件和放大器之间的差异; ASP.NET数据绑定控件时
//的asp.net复选框
< ASP:复选框ID =IdCheckBox=服务器选中=<%#Convert.ToBoolean(EVAL(AutoRenew))%GT; />//为纯HTML复选框
<输入类型=复选框<%#Convert.ToBoolean(EVAL(AutoRenew))? 检查:%GT; />
I have a property
public bool AutoRenew
{
get;
set;
}
And in the page:
<input type="checkbox" checked='<%# Eval("AutoRenew") %>' />
but it is always checked, even if the value of the property is false
.
I tried the following variations:
<input type="checkbox" checked='<%# Convert.ToBoolean(Eval("AutoRenew")) %>' />
<input type="checkbox" checked='<%# Convert.ToBoolean(Eval("AutoRenew")) == true %>' />
<input type="checkbox" checked='<%# (Boolean)Eval("AutoRenew") %>' />
but nothing works, it keeps being checked. What should the expression look like?
EDIT: Here is the problematic part in the page:
...
<asp:ListView ID="MyListView" runat="server">
<LayoutTemplate>
<table class="ms-listviewtable" style="background-color: White;">
<tr class="ms-viewheadertr ms-vhltr">
<th class="ms-vh-icon" scope="col">
<input type="checkbox" />
</th>
<th class="ms-vh2">
<div class="ms-vh-div"><a>Training Item</a></div>
</th>
<th class="ms-vh2">
<div class="ms-vh-div"><a>Training Task Type</a></div>
</th>
<th class="ms-vh2">
<div class="ms-vh-div"><a>Due Date</a></div>
</th>
<th class="ms-vh2">
<div class="ms-vh-div"><a>Auto-Renew</a></div>
</th>
<th class="ms-vh2">
<div class="ms-vh-div"><a>Training Reason</a></div>
</th>
</tr>
<tr id="itemplaceholder" runat="server"></tr>
</table>
</LayoutTemplate>
<ItemTemplate>
<tr class="ms-itmhover">
<td class="ms-vb-itmcbx ms-vb-firstCell">
<input type="checkbox" class="s4-itm-cbx" />
</td>
<td class="ms-vb-title">
<div class="ms-vb itx"><a><%# Eval("Title")%></a></div>
</td>
<td class="ms-vb2">
<asp:DropDownList ID="TaskTypeDropDownList" runat="server">
</asp:DropDownList>
</td>
<td class="ms-vb2"><%# Eval("DueDate")%></td>
<td class="ms-vb2" style="text-align: center;">
<input type="checkbox" checked='<%# Convert.ToBoolean(Eval("AutoRenew")) %>' />
</td>
<td class="ms-vb2"><%# Eval("TrainingReason")%></td>
</tr>
</ItemTemplate>
...
You are using plain html checkbox
to bind data to palin html checkbox you must use checked="checked"
If you use ASP.NET Checkbox control then your original code will work smoothly.
There is difference between plain html controls & ASP.NET controls when binding data.
//for asp.net checkbox
<asp:CheckBox ID="IdCheckBox" runat="server" Checked="<%# Convert.ToBoolean(Eval("AutoRenew")) %>" />
//for plain html checkbox
<input type="checkbox" <%# Convert.ToBoolean(Eval("AutoRenew")) ? "checked" : "" %> />
这篇关于为评估和演示设置选中的值(布尔)的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!