无论如何都要按位置而不是索引向集合的起点添加值。
例如:
<ItemsControl ItemsSource="{Binding Aded}">
<ItemsControl.ItemsPanel>
<ItemsPanelTemplate>
<StackPanel Orientation="Vertical"/>
</ItemsPanelTemplate>
</ItemsControl.ItemsPanel>
<ItemsControl.ItemTemplate>
<DataTemplate>
<!-- some data template -->
</DataTemplate>
</ItemsControl.ItemTemplate>
</ItemsControl>
使用.add函数,它只是添加到集合的末尾,我希望有一种方法可以添加到开头。
迈克尔答案 0 :(得分:2)
请参阅Visual Basic for Application reference about Collection.Add
我猜两个链接都很有用
https://msdn.microsoft.com/library/f26wd2e5(v=vs.100).aspx
看起来您可以在调整添加位置之前或之后使用。
的语法是:object.Add(Item,Key [,{Before | After}])
因此,如果您在其中任何一个插槽中输入一个数字(它是一个索引引用),它将把它放在之前/之后。请注意,您不能同时使用前后两者。
答案 1 :(得分:0)
您可以使用可选的Before和After参数来维护对象的有序集合。要添加的项目分别放置在集合中,该集合分别由Before或After参数标识的项目之前或之后。 例如,将集合设置为等于1会在集合的开头插入一个项目,因为集合对象是基于1的。
因此,只需使用Before:= 1在集合的开头添加即可,例如:
Collection.Add Item:=something, Before:=1
在Doug Coats共享的链接中找到