在ASPX中为RadioButtonList将ListItem值设置为常量

Pet*_*ter 6 asp.net

我必须在这里做错事,但我找不到一个简单的方法让它工作.

想象一下以下代码:

<asp:RadioButtonList ID="MyRadioButtonList" runat="server">
    <asp:ListItem Value="<%= CompanyName.SystemName.Constants.PaymentFrequency.FREQUENT.ToString() %>" Text="Yes" Selected="True"></asp:ListItem>
    <asp:ListItem Value="<%= CompanyName.SystemName.Constants.PaymentFrequency.ONCE.ToString() %>" Text="No, Just do this once"></asp:ListItem>
</asp:RadioButtonList>
Run Code Online (Sandbox Code Playgroud)

但它不会在呈现页面之前编译语句.所以,如果我得到这个单选按钮列表中选择的值就包含有类似的"<%= COMPAN ...%>",而不是什么我的常量定义.

这个的正确语法是什么?

Dan*_*tru 4

我不知道到底为什么(我没有找到参考),但是<%= %>当您在 ASPX 标记中设置 ListItem 的值或文本时,语法不起作用。

您可以从代码隐藏中执行此操作,例如:

MyRadioButtonList.Items.Add(new ListItem(
    "Yes", CompanyName.SystemName.Constants.PaymentFrequency.FREQUENT.ToString()));
//...
Run Code Online (Sandbox Code Playgroud)

  • 他们不小心忘记把这个放进去还是什么?这很糟糕:-) (2认同)