首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何在List<T>的开头添加项目?

如何在List<T>的开头添加项目?
EN

Stack Overflow用户
提问于 2008-12-24 00:34:38
回答 5查看 269K关注 0票数 481

我想在绑定到List<T>的下拉列表中添加一个"Select One“选项。

查询List<T>后,如何将初始Item (而不是数据源的一部分)添加为该List<T>中的第一个元素?我有:

代码语言:javascript
复制
// populate ti from data               
List<MyTypeItem> ti = MyTypeItem.GetTypeItems();    
//create initial entry    
MyTypeItem initialItem = new MyTypeItem();    
initialItem.TypeItem = "Select One";    
initialItem.TypeItemID = 0;
ti.Add(initialItem)  <!-- want this at the TOP!    
// then     
DropDownList1.DataSource = ti;
EN

回答 5

Stack Overflow用户

回答已采纳

发布于 2008-12-24 00:37:59

使用Insert方法:

代码语言:javascript
复制
ti.Insert(0, initialItem);
票数 837
EN

Stack Overflow用户

发布于 2008-12-24 00:37:47

更新:更好的方法是将"AppendDataBoundItems“属性设置为true,然后声明"Choose item”。数据绑定操作将添加到静态声明的项中。

代码语言:javascript
复制
<asp:DropDownList ID="ddl" runat="server" AppendDataBoundItems="true">
    <asp:ListItem Value="0" Text="Please choose..."></asp:ListItem>
</asp:DropDownList>

http://msdn.microsoft.com/en-us/library/system.web.ui.webcontrols.listcontrol.appenddatabounditems.aspx

-Oisin

票数 25
EN

Stack Overflow用户

发布于 2020-01-08 18:11:26

从.NET 4.7.1开始,您可以使用无副作用的Prepend()Append()。输出将是一个IEnumerable。

代码语言:javascript
复制
// Creating an array of numbers
var ti = new List<int> { 1, 2, 3 };

// Prepend and Append any value of the same type
var results = ti.Prepend(0).Append(4);

// output is 0, 1, 2, 3, 4
Console.WriteLine(string.Join(", ", results ));
票数 20
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/390491

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档