كيفية القيام بما يلي: النتقل عبر الكائنات في CollectionView الخاص بالبيانات
تسمح طرق العرض لنفس مجموعة البيانات أن يتم عرضها بطرق مختلفة، اعتماداً على معايير الفرز أو التصفية أو التجميع. توفر طرق العرض أيضاً مفهوم التسجيل للمؤشر حالياً ويسمح بتحريك المؤشر. يوضح هذا المثال كيفية الحصول على الكائن الحالى بالإضافة إلى التنقل خلال الكائنات في مجموعة بيانات باستخدام الوظيفة المتوفرة في الفئة CollectionView.
مثال
في هذا المثال، myCollectionView هو كائن CollectionView وهو طريقة عرض عبر مجموعة منضمة.
في المثال التالي OnButton هو معالج أحداث لأزرار Previous وNext في أحد التطبيقات وهى الأزرار التي تسمح للمستخدم الانتقال فى مجموعة البيانات. لاحظ أن الخصائص IsCurrentBeforeFirst و IsCurrentAfterLast ترسل تقرير سواء مؤشر السجل الحالى وصل لبداية ونهاية القائمة بالترتيب ولذلك يمكن استدعاء MoveCurrentToFirst و MoveCurrentToLast بشكل مناسب.
خاصية العرض CurrentItem هو شكل أو تحول مثل Order لإرجاع ترتيب العناصر الحالي في المجموعة.
'OnButton is called whenever the Next or Previous buttons
'are clicked to change the currency
Private Sub OnButton(ByVal sender As Object, ByVal args As RoutedEventArgs)
Dim b As Button = TryCast(sender, Button)
Select Case b.Name
Case "Previous"
myCollectionView.MoveCurrentToPrevious()
If myCollectionView.IsCurrentBeforeFirst Then
myCollectionView.MoveCurrentToLast()
End If
Case "Next"
myCollectionView.MoveCurrentToNext()
If myCollectionView.IsCurrentAfterLast Then
myCollectionView.MoveCurrentToFirst()
End If
Exit Select
o = TryCast(myCollectionView.CurrentItem, Order)
' TODO: do something with the current Order o
End Select
End Sub
//OnButton is called whenever the Next or Previous buttons
//are clicked to change the currency
private void OnButton(Object sender, RoutedEventArgs args)
{
Button b = sender as Button;
switch (b.Name)
{
case "Previous":
myCollectionView.MoveCurrentToPrevious();
if (myCollectionView.IsCurrentBeforeFirst)
{
myCollectionView.MoveCurrentToLast();
}
break;
case "Next":
myCollectionView.MoveCurrentToNext();
if (myCollectionView.IsCurrentAfterLast)
{
myCollectionView.MoveCurrentToFirst();
}
break;
o = myCollectionView.CurrentItem as Order;
// TODO: do something with the current Order o
}
}
راجع أيضًا:
المهام
كيفية القيام بما يلي: فرز البيانات في العرض
كيفية القيام بما يلي: تصفية البيانات في عرض
كيفية القيام بما يلي: فرز وتجميع بيانات باستخدام طريقة عرض في XAML