合并两个ObservableCollection
void testCompositeCollection()
{
var cmpc = new CompositeCollection();
var numbers = new ObservableCollection<int>();
var lines = new ObservableCollection<string>();
cmpc.Add(new CollectionContainer() { Collection = numbers });
cmpc.Add(new CollectionContainer() { Collection = lines });
listBox.ItemsSource = cmpc;
foo(numbers);
foo(lines);
}
async void foo(ObservableCollection<string> lines)
{
for (int i = 0; i < 10; i++)
{
await Task.Delay(800);
lines.Add("Line " + 2 * i);
}
}
async void foo(ObservableCollection<int> numbers)
{
for (int i = 0; i < 10; i++)
{
await Task.Delay(1000);
numbers.Add(i);
}
}