【问题标题】:change first item dropdownlist更改第一项下拉列表
【发布时间】:2013-03-19 09:30:55
【问题描述】:

我有一个数据绑定的下拉列表,但我想更改第一个值。
但这不起作用

var Movies = Directory
                             .GetFiles(MapPath("~\\Movies\\" ), "*.mp4")
                             .Select(p => Path.GetFileNameWithoutExtension(p))
                             .ToArray();

                Dropdownlist1.DataSource = Movies;
                Dropdownlist1.DataBind();
                Dropdownlist1.Items[0].Value = "Choose one";

【问题讨论】:

标签: asp.net data-binding


【解决方案1】:

您可能试图在下拉项的零索引处插入新值,您需要使用Dropdownlist1.Items.Insert 在第一个位置添加元素。

Dropdownlist1.DataSource = Movies;
Dropdownlist1.DataBind();
Dropdownlist1.Items.Insert(0, new ListItem("Choose one", "Choose one"));

【讨论】:

  • 以及如何从下拉列表中删除 1 项
  • @Will_G Dropdownlist1.Items.RemoveAt(0);
  • 谢谢@GopeshSharma,你也可以使用.Remove
【解决方案2】:

只需在下拉列表中将 AppendDataBoundItems 属性设置为 true。然后在您的 aspx 代码中添加一个新的列表项,例如

 <asp:DropDownList ID="ddlInstallTypes" runat="server" 
            DataSourceID="odsTreatyInstallTypes" DataTextField="DisplayText" AppendDataBoundItems="true"
            DataValueField="Value"> <asp:ListItem Text="- Select -" Value="0"></asp:ListItem>
        </asp:DropDownList>

这样一个新的列表项将被添加到顶部的列表中。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2014-09-04
    • 2018-01-17
    • 2014-11-16
    • 1970-01-01
    • 1970-01-01
    • 2018-09-03
    • 1970-01-01
    相关资源
    最近更新 更多