observablecollection如何实现索引
时间: 2024-05-02 13:20:11 浏览: 104
C# ObservableCollection与List
ObservableCollection 是一个实现 INotifyCollectionChanged 接口的类,可以用于实现动态列表。它支持索引(通过索引获取列表中的元素)。你可以通过以下方式来实现索引:
- 继承 ObservableCollection 类并重写 Indexer(索引器) 属性。
- 将 ObservableCollection 转换为 List,从而使用 List<T> 提供的索引器。
例如:
```csharp
public class MyObservableCollection<T> : ObservableCollection<T>
{
public T this[int index]
{
get { return Items[index]; }
set { Items[index] = value; OnPropertyChanged(new PropertyChangedEventArgs(nameof(Items)))); }
}
}
```
或者:
```csharp
ObservableCollection<string> collection = new ObservableCollection<string>{ "item1", "item2", "item3" };
List<string> list = collection.ToList();
string itemAtIndex = list[1]; // 获取集合中索引为 1 的元素
```
阅读全文