SortedList移植到Silverlight

时间:2010-05-14 15:51:34

标签: silverlight

它看起来排除了SortedList ..您认为现有集合中最合适的是什么? (保持相同的快速访问和更改)

Silverlight词典可以永久排序吗?

祝你好运 VLK

4 个答案:

答案 0 :(得分:2)

我将Wintellect Power Collections和C5 Generic Collections移植到Silverlight。我在这里提供了它们 - http://jaykimble.net/powercollections-and-c5-collections-for-silverlight4.aspx

我这样做主要是因为这个问题引起了我的兴趣。您可以随意在任何类型的项目中使用它们。

答案 1 :(得分:0)

回答你的问题:不。字典不保证按键订购商品。

List<T>支持BinarySearch方法。这可以帮助您实现SortedList

的类似目标

该文档有一个很好的例子,说明基本上是如何实现的。参见: -

List<T>.BinarySearch Method (T)

答案 2 :(得分:0)

您可以查看Wintellect的Power Collections。此库在EPL下免费。我认为OrderedMultiDictionary将为您提供帮助。您应该能够在Silverlight下编译它。我已经使用了几年但是没有使用这个库(以及Richter的线程库)用于WPF项目。

编辑:

在玩完这个之后,看起来你需要做一些工作才能让电源集合在Silverlight中运行。

答案 3 :(得分:0)

我没有使用silverlight的解决方法是使用KeyValuePair类型创建一个通用列表,然后对列表进行排序。

List<KeyValuePair<int, string>> sampleList = new List<KeyValuePair<int, string>>();

//Assuming you have a set of objects in an array or list
foreach(var item in items)
{
   sampleList.Add(new KeyValuePair<int, string>>(item.ID, item.Description))
}

sampleList = sampleList.OrderBy(data => data.Key).ToList();

效果与使用排序列表相同。