2

我想根据 typeId 显示复选框或单选按钮。

<%# (Eval("TypeId").ToString() == "1") ? "CheckBox" : "RadioButton"%>
<asp:CheckBox ID="CheckBox" runat="server" Text='<%#Eval("OptionName")%>' />
<asp:RadioButton ID="RadioButton" runat="server" Text='<%#Eval("OptionName")%>' />

如果 typeId == 1 我想显示我的代码行中的复选框,否则我想显示单选按钮。我怎样才能做到这一点。

谢谢。

4

4 回答 4

2

您可以使用该Visible属性:

<asp:CheckBox ID="CheckBox" runat="server" 
    Text='<%#Eval("OptionName")%>' 
    Visible='<%# Eval("TypeId").ToString() == "1" %>'
/>
<asp:RadioButton ID="RadioButton" runat="server" 
    Text='<%#Eval("OptionName")%>' 
    Visible='<%# Eval("TypeId").ToString() != "1" %>'
/>
于 2012-06-15T09:12:26.243 回答
0

向数据源添加两个布尔属性,例如 ShowCheckBox 和 ShowRadioButton

public bool ShowCheckBox
{
    get
    {
         return TypeId.ToString() == "1";
    }
}

并使用这些数据绑定到可见属性

<asp:CheckBox ID="CheckBox" runat="server" Visible='<%#Eval("ShowCheckBox")%>' />
于 2012-06-15T09:10:04.920 回答
0

尝试这个:

<asp:CheckBox ID="CheckBox" runat="server" Visible="<%# (Eval("TypeId").ToString() == "1") ? True : False %>" Text='<%#Eval("OptionName")%>' />
于 2012-06-15T09:10:43.657 回答
0

在 Repeater.ItemDatabound 事件中,在那里添加适当的控件。

于 2012-06-15T09:15:06.990 回答