1

我想将 bool 值绑定到 repeater 。

<asp:Repeater ID="Repeater1" runat="server">
<ItemTemplate>
<br />
<img ID="ImageZoom" runat="server" src='<%# DataBinder.Eval(Container.DataItem, "ImageUrl") %> '  style="display: inline; height:auto; left: 0pt; top: 0pt; width:auto;" />
    <asp:CheckBox ID="CheckBox1" runat="server" Text='<%# DataBinder.Eval(Container.DataItem, "ImageId") %> ' Checked='<%# DataBinder.Eval(Container.DataItem, "Boolv") %>' /> 

</ItemTemplate>
</asp:Repeater>

这里在页面加载检查应该只有 true 或 false 但它返回 checked 。我怎样才能得到真或假?

4

5 回答 5

2

而不是摆弄 aspx 标记,我会这样做ItemDataBound

protected void Repeater1_ItemDataBound(object sender, RepeaterItemEventArgs e)
{
    RepeaterItem ri = e.Item;
    DataRowView dr = (DataRowView)ri.DataItem;
    CheckBox CheckBox1 = (CheckBox)ri.FindControl("CheckBox1");
    CheckBox1.Checked = (bool)dr["Boolv"];
}
于 2012-08-27T07:53:37.523 回答
0

几天前,我也遇到了转发器和其中的复选框的问题。我想将复选框的值绑定到 bool 变量。

这是我的帖子。我已经使用帖子中接受的答案解决了我的问题。 回答链接

干杯!

于 2012-08-27T07:50:17.080 回答
0

我你想在客户端使用这个eval if statement

<asp:CheckBox ID="CheckBox1" runat="server" Text='<%# DataBinder.Eval(Container.DataItem, "ImageId") %> ' Checked='<%# ((int)Eval("Boolv")) == 1 ? Checked : false %>' /> 
于 2012-08-27T07:52:18.403 回答
0

使用OnItemDataBound eventRepeater Control

是我对类似问题的回答

希望它有帮助:)

于 2012-08-27T07:52:21.617 回答
0

在我的一个实现中,我从数据库中获取 1 和 0 作为布尔值,所以我的实现如下:

<asp:CheckBox ID="chkAssign" runat="server" Checked=<%# TranslateAction(((System.Data.DataRowView)Container.DataItem)["ISACTIVE"].ToString())%> />

在后面的代码中,我有一个名为 TranslateAction 的方法:

protected Boolean TranslateAction(String status)
{
    if (status == "1")
        return true;
     else
        return false;
}

我希望它会帮助你。

于 2012-08-27T07:54:37.297 回答