【问题标题】:ASP.NET web form pass list to view page and display with html controlsASP.NET Web 表单传递列表以查看页面并使用 html 控件显示
【发布时间】:2016-11-01 11:25:25
【问题描述】:

我是 asp.net 的新手。我正在尝试将静态列表传递到我的视图页面中。

以下是我在 _Default 类中编写的代码:

protected void Page_Load(object sender, EventArgs e)
{
    List<String> itemlist = new List<string>();
    itemlist.Add("Drink water");
    itemlist.Add("Sleep more");
    itemlist.Add("Drink tea");
    itemlist.Add("Drink water");
    itemlist.Add("Exercise more");
    itemlist.Add("Eat healthier");
    itemlist.Add("Smile");
    itemlist.Add("Do Yoga");
}

现在我正在尝试将上面的列表传递到我的 Default.aspx 页面,但我不知道该怎么做。

请告诉我如何使用 HTML 控件将上面的列表传递和显示到我的 Default.aspx 中。

【问题讨论】:

  • 你想如何实际展示它们?在选择框中,在有序列表中?

标签: c# asp.net webforms


【解决方案1】:

首先用一个函数包装你的列表,然后在需要的任何地方调用它。

  public List<String> MyToDOList()
    {

        List<String> itemlist = new List<string>();
        itemlist.Add("Drink water");
        itemlist.Add("Sleep more");
        itemlist.Add("Drink tea");
        itemlist.Add("Drink water");
        itemlist.Add("Exercise more");
        itemlist.Add("Eat healthier");
        itemlist.Add("Smile");
        itemlist.Add("Do Yoga");

        return itemlist;
    }

如果您想在 .aspx 文件上显示带有 html 标记的列表,以下是示例代码:

<%
    var todo_list=MyToDOList();
    Response.Write("<ul>");
    foreach(var item in todo_list)
    {
        Response.Write("<li>"+item+"</li><br/>");
    }
    Response.Write("</ul>");
    %>

【讨论】:

    【解决方案2】:

    在您的 aspx 文件中(视图)

    <asp:DropDownList id="ddlItems" runat="server" AutoPostBack="True"></asp:DropDownList>
    

    在您的 aspx.cs 文件中(代码)

    protected void Page_Load(object sender, EventArgs e)
     {
        List<String> itemlist = new List<string>();
        itemlist.Add("Drink water");
        itemlist.Add("Sleep more");
        itemlist.Add("Drink tea");
        itemlist.Add("Drink water");
        itemlist.Add("Exercise more");
        itemlist.Add("Eat healthier");
        itemlist.Add("Smile");
        itemlist.Add("Do Yoga");
    
        ddlItems.DataSource = itemlist;
        ddlItems.DataBind();
    }
    

    【讨论】:

      【解决方案3】:

      将 DropDownList 添加到您的 aspx 页面。然后将以下行添加到您的 Page_Load:

       this.DropDownList1.DataSource = itemlist;
       DropDownList1.DataBind();
      

      【讨论】:

        【解决方案4】:

        如果您想将列表显示到特定控件(如 DropDownList 或 Gridview)中,您可以将列表传递给其 DataSource,然后调用 DataBind 方法。 但是,如果您只想显示项目,您也可以使用 ASP:Repeater 控件或仅使用 Response.write 方法编写内容

        【讨论】:

          猜你喜欢
          • 1970-01-01
          • 2021-06-19
          • 1970-01-01
          • 2010-10-22
          • 2012-10-02
          • 1970-01-01
          • 1970-01-01
          • 2020-04-11
          • 2012-01-03
          相关资源
          最近更新 更多