質問

にバインドされたドロップダウンリストに「1つの選択」オプションを追加したい List<T>.

クエリをしたら List<T>, 、最初の追加を追加するにはどうすればよいですか Item, 、データソースの一部ではなく、その中の最初の要素として 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;
役に立ちましたか?

解決

使用 入れる 方法:

ti.Insert(0, initialItem);

他のヒント

更新:より良いアイデア、「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

使用する List<T>.Insert

特定の例には関係ありませんが、パフォーマンスが重要である場合も使用することを検討してください LinkedList<T> aの開始にアイテムを挿入するため List<T> すべてのアイテムを移動する必要があります。見る LinkedListとLinkedListを使用するのはいつですか.

使用する 入れる の方法 List<T>:

list.insertメソッド(int32、t): Inserts のリストの要素 specified index.

var names = new List<string> { "John", "Anna", "Monica" };
names.Insert(0, "Micheal"); // Insert to the first element
ライセンス: CC-BY-SA帰属
所属していません StackOverflow
scroll top