将变量输出到aspx文件中的webform ListItem

时间:2013-08-13 20:56:43

标签: c# webforms

我正在尝试在ListItem文件中为aspx元素的文本和值输出一些变量。

这就是我所拥有的(不起作用)。问题与将变量输出到ListItem有关,虽然我不知道具体的错误(我没有设置web.config来显示错误,但目前无法更新)

<asp:DropDownList runat="server" name="ExpYear" id="ExpYear">
    <%
    int expirationYear = DateTime.Now.Year;
    for(int i = 0; i < 4; i++)
    {
        string expirationYearShort = expirationYear.ToString().Substring(2);
        %>
        <asp:ListItem value='<%= expirationYearShort %>'><%= expirationYear %></asp:ListItem>
        <%
        expirationYear++;
    }
    %>
</asp:DropDownList>

我知道这不是一个好方法,但是有办法做到这一点吗?

2 个答案:

答案 0 :(得分:1)

这不是最新的代码,因为我故意编写它以确保核心尽可能接近原始以便进行比较。但是,它似乎确实符合您的要求:

<script runat="server">

  protected void Page_Load( object sender, EventArgs e )
  {

    int expirationYear = DateTime.Now.Year;
    ExpYear.Items.Clear();
    for ( int i = 0; i < 4; i++ )
    {
      string expirationYearShort = expirationYear.ToString().Substring( 2 );
      ExpYear.Items.Add( new ListItem( expirationYearShort, expirationYear.ToString() ) );
      expirationYear++;
    }
  }

</script>

<asp:DropDownList runat="server" ID="ExpYear" />

答案 1 :(得分:0)

似乎没有办法实现这一目标。我最终决定硬编码我需要的值。

如果有人有更好的解决方案,请分享。