• Product Bundles

    DevCraft

    All Telerik .NET tools and Kendo UI JavaScript components in one package. Now enhanced with:

    • NEW: Design Kits for Figma
    • Online Training
    • Document Processing Library
    • Embedded Reporting for web and desktop
    Web
    Kendo UI UI for jQuery UI for Angular UI for React UI for Vue UI for ASP.NET AJAX UI for ASP.NET MVC UI for ASP.NET Core UI for Blazor UI for Silverlight UI for PHP UI for JSP
    Mobile
    UI for .NET MAUI UI for Xamarin
    Document Management
    Telerik Document Processing
    Desktop
    UI for .NET MAUI UI for WinUI UI for WinForms UI for WPF UI for UWP
    Reporting & Mocking
    Telerik Reporting Telerik Report Server Telerik JustMock
    Automated Testing
    Test Studio Test Studio Dev Edition
    CMS
    Sitefinity
    UI/UX Design
    Unite UX
    Debugging
    Fiddler Fiddler Everywhere Fiddler Classic Fiddler Jam FiddlerCap FiddlerCore
    Extended Reality
    UI for Unity XR
    Free Tools
    JustAssembly JustDecompile VB.NET to C# Converter Testing Framework
    View all products
  • Overview
  • Demos
    • What's New
    • Roadmap
    • Release History
  • Docs & Support
  • Pricing
  • Search
  • Shopping cart
    • Account Overview
    • Your Licenses
    • Support Center
    • Forum Profile
    • Payment Methods
    • Edit Profile
    • Log out
  • Login
  • Contact Us
  • Try now

Class VirtualQueryableCollectionView

Represents a view for grouping, sorting, filtering and paging data collection virtually.

Inheritance
System.Object
QueryableCollectionView
VirtualQueryableCollectionView
VirtualQueryableCollectionView<T>
Inherited Members
QueryableCollectionView.AddNewItem(Object)
QueryableCollectionView.AddNew(Object)
QueryableCollectionView.CommitNew()
QueryableCollectionView.EditItem(Object)
QueryableCollectionView.CommitEdit()
QueryableCollectionView.CancelEdit()
QueryableCollectionView.ConstructNewItem()
QueryableCollectionView.RaisePageChanged()
QueryableCollectionView.CompletePageMove(Int32)
QueryableCollectionView.MoveToFirstPage()
QueryableCollectionView.MoveToLastPage()
QueryableCollectionView.MoveToNextPage()
QueryableCollectionView.MoveToPage(Int32)
QueryableCollectionView.MoveToPageCore(Int32)
QueryableCollectionView.MoveToPreviousPage()
QueryableCollectionView.UpdateItemCount()
QueryableCollectionView.GetEffectiveItemCount()
QueryableCollectionView.GetPagingDeterminativeItemCount()
QueryableCollectionView.InvalidatePagingDeterminativeItemCount()
QueryableCollectionView.DeferRefresh()
QueryableCollectionView.MoveCurrentTo(Object)
QueryableCollectionView.MoveCurrentToFirst()
QueryableCollectionView.MoveCurrentToLast()
QueryableCollectionView.MoveCurrentToNext()
QueryableCollectionView.MoveCurrentToPosition(Int32)
QueryableCollectionView.MoveCurrentToPrevious()
QueryableCollectionView.OnCurrentChanged(EventArgs)
QueryableCollectionView.OnCurrentChanging(CurrentChangingEventArgs)
QueryableCollectionView.OnCurrentChanging()
QueryableCollectionView.SetCurrentPosition(Int32)
QueryableCollectionView.SetCurrent(Object, Int32)
QueryableCollectionView.InitializeCurrentItem()
QueryableCollectionView.Contains(Object)
QueryableCollectionView.Refresh()
QueryableCollectionView.OnSortDescriptorsItemChanged(Object, ItemChangedEventArgs<ISortDescriptor>)
QueryableCollectionView.OnSortDescriptorsCollectionChanged(Object, NotifyCollectionChangedEventArgs)
QueryableCollectionView.OnGroupDescriptorsItemChanged(Object, ItemChangedEventArgs<IGroupDescriptor>)
QueryableCollectionView.OnGroupDescriptorsCollectionChanged(Object, NotifyCollectionChangedEventArgs)
QueryableCollectionView.OnFilterDescriptorsItemChanged(Object, ItemChangedEventArgs<IFilterDescriptor>)
QueryableCollectionView.OnFilterDescriptorsCollectionChanged(Object, NotifyCollectionChangedEventArgs)
QueryableCollectionView.OnFilterDescriptorsChanged()
QueryableCollectionView.OnFilterDescriptorsLogicalOperatorChanged()
QueryableCollectionView.ApplySelectDescriptors(IQueryable)
QueryableCollectionView.Sort(IQueryable)
QueryableCollectionView.SetInternalList(IList)
QueryableCollectionView.GetInternalList()
QueryableCollectionView.InitializeInternalList(IQueryable)
QueryableCollectionView.CreateInternalList()
QueryableCollectionView.PopulateInternalList(IQueryable)
QueryableCollectionView.OnInternalListCreated()
QueryableCollectionView.OnPropertyChanged(PropertyChangedEventArgs)
QueryableCollectionView.RefreshOverrideCore()
QueryableCollectionView.RefreshOverride()
QueryableCollectionView.InitializeCurrencyOnRefresh(QueryableCollectionView.CurrencyRefreshInfo)
QueryableCollectionView.RefreshGroupsOnItemAction(Object, ItemAction)
QueryableCollectionView.RefreshOnItemAction(Object, ItemAction)
QueryableCollectionView.RefreshOnItemActionWithoutPaging(Object, ItemAction)
QueryableCollectionView.OnPropertyChanged(String)
QueryableCollectionView.UpdateTotalItemCount()
QueryableCollectionView.Dispose()
QueryableCollectionView.Dispose(Boolean)
QueryableCollectionView.ShouldRespectIEditableObject
QueryableCollectionView.CanAddNewItem
QueryableCollectionView.CurrentAddItem
QueryableCollectionView.CanCancelEdit
QueryableCollectionView.CurrentEditItem
QueryableCollectionView.IsAddingNew
QueryableCollectionView.IsEditingItem
QueryableCollectionView.NewItemPlaceholderPosition
QueryableCollectionView.CanChangePage
QueryableCollectionView.IsPageChanging
QueryableCollectionView.PageIndex
QueryableCollectionView.PageSize
QueryableCollectionView.ShouldRefreshOrDeferOnPageSizeChange
QueryableCollectionView.IsPaged
QueryableCollectionView.Count
QueryableCollectionView.TotalItemCount
QueryableCollectionView.CurrentPosition
QueryableCollectionView.IsCurrentAfterLast
QueryableCollectionView.IsCurrentBeforeFirst
QueryableCollectionView.CurrentItem
QueryableCollectionView.PendingCurrencyRefresh
QueryableCollectionView.NeedsRefresh
QueryableCollectionView.SourceCollection
QueryableCollectionView.CanFilter
QueryableCollectionView.CanGroup
QueryableCollectionView.CanSort
QueryableCollectionView.Culture
QueryableCollectionView.Groups
QueryableCollectionView.Item[Int32]
QueryableCollectionView.IsEmpty
QueryableCollectionView.SortDescriptors
QueryableCollectionView.FilterDescriptors
QueryableCollectionView.GroupDescriptors
QueryableCollectionView.ItemType
QueryableCollectionView.IsLoading
QueryableCollectionView.IsGrouped
QueryableCollectionView.ShouldInitializeGroupProxy
QueryableCollectionView.Filter
QueryableCollectionView.SortDescriptions
QueryableCollectionView.GroupDescriptions
QueryableCollectionView.ItemProperties
QueryableCollectionView.ItemPropertiesByPropertyName
QueryableCollectionView.PageChanged
QueryableCollectionView.PageChanging
QueryableCollectionView.CollectionChanged
QueryableCollectionView.CurrentChanged
QueryableCollectionView.CurrentChanging
QueryableCollectionView.PropertyChanged
QueryableCollectionView.GroupCollectionChanged
System.Object.ToString()
System.Object.Equals(System.Object)
System.Object.Equals(System.Object, System.Object)
System.Object.ReferenceEquals(System.Object, System.Object)
System.Object.GetHashCode()
System.Object.GetType()
System.Object.MemberwiseClone()
Namespace: Telerik.Windows.Data
Assembly: Telerik.Windows.Data.dll

Syntax

public class VirtualQueryableCollectionView : QueryableCollectionView, IEditableCollectionViewAddNewItem, IEditableCollectionView, ICollectionView, INotifyCollectionChanged, INotifyPropertyChanged, IPagedCollectionView, IWeakEventListener<NotifyCollectionChangedEventArgs>, IWeakEventListener<CurrentChangingEventArgs>, IQueryableCollectionView, IItemProperties, IDisposable, IList, ICollection, IEnumerable

Constructors

VirtualQueryableCollectionView()

Initializes a new instance of the VirtualQueryableCollectionView class.

Declaration
public VirtualQueryableCollectionView()

VirtualQueryableCollectionView(IEnumerable)

Initializes a new instance of the VirtualQueryableCollectionView class.

Declaration
public VirtualQueryableCollectionView(IEnumerable source)
Parameters
System.Collections.IEnumerable source

The source collection.

VirtualQueryableCollectionView(IEnumerable, Type)

Initializes a new instance of the VirtualQueryableCollectionView class.

Declaration
public VirtualQueryableCollectionView(IEnumerable source, Type itemType)
Parameters
System.Collections.IEnumerable source

System.Type itemType

Properties

CanAddNew

Gets a value that indicates whether a new item can be added to the collection.

Declaration
public override bool CanAddNew { get; }
Property Value
System.Boolean

true if SourceCollection is not System.Collections.IList.IsFixedSize or Add method is available and collection element has a default constructor; otherwise, false.

Overrides
QueryableCollectionView.CanAddNew

CanRemove

Gets a value that indicates whether an item can be removed from the collection.

Declaration
public override bool CanRemove { get; }
Property Value
System.Boolean

true if an item can be removed from the collection; otherwise, false.

Overrides
QueryableCollectionView.CanRemove

InternalCount

Protected accessor to private count.

Declaration
protected override int InternalCount { get; }
Property Value
System.Int32

Overrides
QueryableCollectionView.InternalCount

InternalList

Gets the list created from resulting query after applying filtering, sorting, grouping and paging.

Declaration
protected override IList InternalList { get; }
Property Value
System.Collections.IList

The internal list for the current view.

Overrides
QueryableCollectionView.InternalList

IsFixedSize

Declaration
public bool IsFixedSize { get; }
Property Value
System.Boolean

Implements
System.Collections.IList.IsFixedSize

IsReadOnly

Declaration
public bool IsReadOnly { get; }
Property Value
System.Boolean

Implements
System.Collections.IList.IsReadOnly

IsRequestingItems

Gets a value that indicates whether this view is loading items.

Declaration
public virtual bool IsRequestingItems { get; protected set; }
Property Value
System.Boolean

IsSynchronized

Declaration
public bool IsSynchronized { get; }
Property Value
System.Boolean

Implements
System.Collections.ICollection.IsSynchronized

ItemCount

Gets the minimum number of items known to be in the source collection.

Declaration
public override int ItemCount { get; }
Property Value
System.Int32

The minimum number of items known to be in the source collection.

Overrides
QueryableCollectionView.ItemCount

LoadSize

Gets or sets the total number of items to retrieve.

Declaration
public int LoadSize { get; set; }
Property Value
System.Int32

The total number of items to retrieve.

QueryableSourceCollection

Returns the queryable collection, constructed from SourceCollection.

Declaration
public override IQueryable QueryableSourceCollection { get; }
Property Value
System.Linq.IQueryable

An System.Linq.IQueryable object that is constructed from the underlying collection.

Overrides
QueryableCollectionView.QueryableSourceCollection

ShouldEnumeratorLoadItems

Gets or sets a value that indicates whether items that are not loaded yet should get loaded while the collection's enumerator is traversed.

Declaration
public bool ShouldEnumeratorLoadItems { get; set; }
Property Value
System.Boolean

SyncRoot

Declaration
public object SyncRoot { get; }
Property Value
System.Object

Implements
System.Collections.ICollection.SyncRoot

VirtualItemCount

Gets or sets the total number of all items.

Declaration
public int VirtualItemCount { get; set; }
Property Value
System.Int32

The total number of all items.

Methods

Add(Object)

Declaration
public int Add(object value)
Parameters
System.Object value

Returns
System.Int32

Implements
System.Collections.IList.Add(System.Object)

AddNew()

Adds a new item to the collection.

Declaration
public override object AddNew()
Returns
System.Object

The new item that is added to the collection.

Overrides
QueryableCollectionView.AddNew()
Exceptions
System.InvalidOperationException

CanAddNew is false.

CancelNew()

Ends the add transaction and discards the pending new item.

Declaration
public override void CancelNew()
Overrides
QueryableCollectionView.CancelNew()

Clear()

Declaration
public void Clear()
Implements
System.Collections.IList.Clear()

CopyTo(Array, Int32)

Declaration
public void CopyTo(Array array, int index)
Parameters
System.Array array

System.Int32 index

Implements
System.Collections.ICollection.CopyTo(System.Array, System.Int32)

CreateView()

Returns System.Linq.IQueryable with applied filtering, sorting, grouping and paging.

Declaration
protected override IQueryable CreateView()
Returns
System.Linq.IQueryable

Overrides
QueryableCollectionView.CreateView()

GetEnumerator()

Declaration
public override IEnumerator GetEnumerator()
Returns
System.Collections.IEnumerator

Overrides
QueryableCollectionView.GetEnumerator()
Implements
System.Collections.IEnumerable.GetEnumerator()

GetItemAt(Int32)

Retrieves the item at the specified zero-based index in the view.

Declaration
public override object GetItemAt(int index)
Parameters
System.Int32 index

The zero-based index of the item to retrieve.

Returns
System.Object

The item at the specified zero-based index in the view.

Overrides
QueryableCollectionView.GetItemAt(Int32)
Remarks

If the item at this index is not loaded will raise ItemsLoading event. The returned item will be null or temporary dynamic item until the real item is loaded.

Exceptions
System.ArgumentOutOfRangeException

index is less than 0 or greater than ItemCount.

IndexOf(Object)

Returns the zero-based index at which the specified item is located.

Declaration
public override int IndexOf(object item)
Parameters
System.Object item

The item to locate.

Returns
System.Int32

The index at which the specified item is located, or –1 if the item is unknown.

Overrides
QueryableCollectionView.IndexOf(Object)
Implements
System.Collections.IList.IndexOf(System.Object)

Insert(Int32, Object)

Declaration
public void Insert(int index, object value)
Parameters
System.Int32 index

System.Object value

Implements
System.Collections.IList.Insert(System.Int32, System.Object)

InvalidatePagingAndRefresh()

Invalidates the paging and refreshes the view.

Declaration
protected override void InvalidatePagingAndRefresh()
Overrides
QueryableCollectionView.InvalidatePagingAndRefresh()

Load(Int32, IEnumerable)

Loads new data in the view.

Declaration
public void Load(int startIndex, IEnumerable items)
Parameters
System.Int32 startIndex

System.Collections.IEnumerable items

OnCollectionChanged(NotifyCollectionChangedEventArgs)

Raises the CollectionChanged event.

Declaration
protected override void OnCollectionChanged(NotifyCollectionChangedEventArgs args)
Parameters
System.Collections.Specialized.NotifyCollectionChangedEventArgs args

The System.Collections.Specialized.NotifyCollectionChangedEventArgs instance containing the event data.

Overrides
QueryableCollectionView.OnCollectionChanged(NotifyCollectionChangedEventArgs)

OnRefresh()

Invoked when the instance should be refreshed.

Declaration
protected override void OnRefresh()
Overrides
QueryableCollectionView.OnRefresh()

Remove(Object)

Removes the specified item from the collection.

Declaration
public override void Remove(object item)
Parameters
System.Object item

The item to remove.

Overrides
QueryableCollectionView.Remove(Object)
Implements
System.Collections.IList.Remove(System.Object)

RemoveAt(Int32)

Removes the item at the specified position from the collection.

Declaration
public override void RemoveAt(int index)
Parameters
System.Int32 index

The position of the item to remove.

Overrides
QueryableCollectionView.RemoveAt(Int32)
Implements
System.Collections.IList.RemoveAt(System.Int32)

ResetItems()

Reset all items to default value (null) in the collection.

Declaration
public void ResetItems()

ResetItems(Int32, Int32)

Reset number of items starting from given index to default value (null) in the collection.

Declaration
public void ResetItems(int startIndex, int count)
Parameters
System.Int32 startIndex

System.Int32 count

Events

ItemsLoaded

Occurs when the items are loaded.

Declaration
public event EventHandler<VirtualQueryableCollectionViewItemsLoadedEventArgs> ItemsLoaded
Event Type
System.EventHandler<VirtualQueryableCollectionViewItemsLoadedEventArgs>

ItemsLoading

Occurs when the collection is about to load items.

Declaration
public event EventHandler<VirtualQueryableCollectionViewItemsLoadingEventArgs> ItemsLoading
Event Type
System.EventHandler<VirtualQueryableCollectionViewItemsLoadingEventArgs>

Explicit Interface Implementations

ICollection.Count

Declaration
int ICollection.Count { get; }
Returns
System.Int32

Implements
System.Collections.ICollection.Count

IList.get_Item(Int32)

Declaration
object IList.get_Item(int index)
Parameters
System.Int32 index

Returns
System.Object

Implements
System.Collections.IList.get_Item(System.Int32)

IList.Item[Int32]

Declaration
object IList.this[] { get; set; }
Parameters
System.Int32 index

Returns
System.Object

Implements
System.Collections.IList.Item[System.Int32]

IList.set_Item(Int32, Object)

Declaration
void IList.set_Item(int index, object value)
Parameters
System.Int32 index

System.Object value

Implements
System.Collections.IList.set_Item(System.Int32, System.Object)

Extension Methods

CollectionExtensions.ToEnumerable<T>(T)
EnumerableExtensions.ToEnumerable<T>(T)

Was this article helpful?

Tell us how we can improve this article

Skip
Getting Started
  • Install Now
  • Demos
  • SDK Samples Browser
  • Sample Applications
Support Resources
  • Code Library
  • Knowledge Base
  • MVVM Support
  • Videos
  • GitHub SDK Repository
Community
  • Forums
  • Blogs
  • XAML Feedback Portal
  • Document Processing Feedback Portal

Copyright © 2018 Progress Software Corporation and/or its subsidiaries or affiliates.
All Rights Reserved.

Progress, Telerik, and certain product names used herein are trademarks or registered trademarks of Progress Software Corporation and/or one of its subsidiaries or affiliates in the U.S. and/or other countries. See Trademarks for appropriate markings.