C# ObservableCollection.Next()和ObservableCollection.previous()函数
我有一个包含20个项目(图像)和按钮(“下一步”)的observablecollection。如何获得observablecollection.Next()和observablecollection.previous()等函数?一个observablecollection没有“当前”甚至“选定”项目的概念。他们都是平等的 您可以保留一个简单的C# ObservableCollection.Next()和ObservableCollection.previous()函数,c#,silverlight,windows-phone-7,observablecollection,C#,Silverlight,Windows Phone 7,Observablecollection,我有一个包含20个项目(图像)和按钮(“下一步”)的observablecollection。如何获得observablecollection.Next()和observablecollection.previous()等函数?一个observablecollection没有“当前”甚至“选定”项目的概念。他们都是平等的 您可以保留一个简单的int索引,并递增/递减它 或者使用绑定列表框的SelectedItem属性或类似属性 最简单的解决方法是使用迭代器-简单整数跟踪当前项 int coute
int
索引,并递增/递减它
或者使用绑定列表框的SelectedItem属性或类似属性 最简单的解决方法是使用迭代器-简单整数跟踪当前项
int couter = 0;
按下“下一步”按钮时,如果计数器不大于列表中的元素数,则检查计数器,并增加计数器:
if(counter < myObservableColection.Count)
++counter;
if(计数器
您以前的函数需要检查计数器是否不是负数,并减小计数器
您可以使用尝试更整洁的模式,只需按下一个按钮,就可以调用ObservableCollection。这将为您提供一个IEnumerator,您可以在其上调用Current和MoveNext 如果您需要实现一个前一个,那么您将使用一个更像lukas'的带有索引的解决方案