Asp.net DropDownList 未在 ListView 内绑定

Asp.net DropDownList not binding inside a ListView

我需要在 ListView 的 ItemTemplate 中绑定一个 Asp.net DropDownList。我正在使用 LINQ 通过 LINQ 数据库上下文查询数据,如下所示:

.cs

protected void ListView_AllTickets_ItemDataBound(object sender, ListViewItemEventArgs e)
{
    DataClassesDataContext db = new DataClassesDataContext();
    DropDownList ddl_spList = (DropDownList)e.Item.FindControl("DropDownList_SpList");

    //Getting all service providers users
    var spusers = (from x in db.User1s where x.usertype == "200" select x);

    ddl_spList.DataSource = spusers;

    ddl_spList.DataTextField = "email";

    ListView_AllTickets.DataBind();

}

.aspx

<asp:DropDownList ID="DropDownList_SpList" runat="server" class="form-control" ClientIDMode="AutoID"> </asp:DropDownList>

请注意我是如何找到控件然后将其绑定到 LINQ 查询的结果的。使用调试器时,数据获取成功,返回数据中存在"email"字段。但是,由于某种原因,即使在 DataBind() 语句之后,ListView_AllTickets 的项目计数也将为 0。

您需要添加这一行:

 ddl_spList.DataBind();

您正在重新绑定 ListView_AllTickets,但那是父对象并且已经被绑定(因此您正在使用此方法处理事件)。打错了吗?

改为绑定 ddl_spList