Как добавить элемент в начало списка <T>?

Я хочу добавить опцию "Выбрать один" в раскрывающийся список, привязанный к List<T>.

Как только я запрашиваю для List<T>, как добавить исходный Item, а не часть источника данных, как FIRST-элемент в List<T>? У меня есть:

// 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;

Ответ 1

Используйте метод Insert:

ti.Insert(0, initialItem);

Ответ 2

Обновление: лучшая идея, установите для свойства AppendDataBoundItems значение true, а затем объявите "Выбрать элемент" декларативно. Операция привязки данных добавит к статически объявленному элементу.

<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