Version

IDataSource Interface Members

The following tables list the members exposed by IDataSource.

Public Properties
 NameDescription
 PropertyActualPrimaryKeyGets the current actual primary key of the data source. This may have been auto detected, if possible, or provided or overridden by the user.  
 PropertyActualSchemaGets the resolved schema for the data source. Represents which properties are available for the items.  
 PropertyDeferAutoRefreshGets or sets whether the auto refresh mechanism of the data source is currently defered. The data source will not react to most setting changes while this is set to true an will instead defer processing. Setting this value to false will queue a new refresh.  
 PropertyExecutionContextGets the execution context that the data source should synchronize asynchronous actions with, or use to defer delayed actions.  
 PropertyFilterExpressionsGets a collection to add filter expressions to. Changing the filter expressions in this collection will adjust the filter applied to the data source.  
 PropertyFirstVisibleIndexRequestedGets or sets which index consumers of the data source desire to be the current first visible index. A grid, for example, would indicate the current visible top row, and update this as that changes.  
 PropertyGroupDescriptionsGets a collection to add group descriptions to. Changing the group descriptions in this collection will adjust the grouping applied to the data source.  
 PropertyIncludeSummaryRowsInSectionGets or sets whether the data source should include summary rows inside the group when summaries are present.  
 PropertyIsFilteringSupportedGets if filtering is supported on the data source.  
 PropertyIsGroupingSupportedGets if grouping is supported on the data source.  
 PropertyIsItemIndexLookupSupportedGets whether lookup of an index for a provided item is supported.  
 PropertyIsKeyIndexLookupSupportedGets whether lookup of an index for a provided primary key value is supported.  
 PropertyIsSectionCollapsableGets or sets if sections are collapsable.  
 PropertyIsSectionContentVisibleGets or sets whether content besides the section headers are displayed.  
 PropertyIsSectionExpandedDefaultGets or sets whether sections default to expanded or collapsed when they are created.  
 PropertyIsSectionHeaderNormalRowGets or sets whether the section headers are treated as normal rows.  
 PropertyIsSectionSummaryRowsAtBottomGets or sets whether the summary rows within a section are placed at the bottom of the section, otherwise they will be placed at the top.  
 PropertyIsSortingSupportedGets if sorting is supported on the data source.  
 PropertyIsVirtualGets if the current data source is a virtual data source.  
 PropertyLastVisibleIndexRequestedGets or sets which index consumers of the data source desire to be the current last visible index. A grid, for example, would indicate the current visible top row, and update this as that changes.  
 PropertyNotifyUsingSourceIndexesGets whether, when manually notifying the data source of changes, one should use indexes relative to the actual source data, or relative to the view the data source is maintaining into the data.  
 PropertyPrimaryKeyGets or sets a list of property references that indicate the user provided primary key of the items in the data source. Consumers of the data source will often need to uniquely identify items in the data source. For this purpose a primary key should be specified.  
 PropertyPropertiesRequestedGets or sets a list of property references for the properties desired by the consumer of the data source. If known, the data source may take steps to request only those properties, or to ensure that those properties are included, rather than the default behavior for this type of data source.  
 PropertyResolvedDataProvider  
 PropertySchemaIncludedPropertiesGets or sets what properties should be included when resolving the datasource schema. If null, all properties are included.  
 PropertySectionHeaderDisplayModeGets or sets how section headers are displayed.  
 PropertyShouldEmitSectionFootersSets or gets whether the data source should emit section footers.  
 PropertyShouldEmitSectionHeadersSets or gets whether the data source should emit section headers.  
 PropertyShouldEmitShiftedRowsSets or gets whether the data source should emit shifted rows pulled out of position by pinning.  
 PropertyShouldEmitSummaryRowsSets or gets whether the data source should emit summary rows.  
 PropertySortDescriptionsGets a collection to add sort descriptions to. Changing the sort descriptions in this collection will adjust the sort applied to the data source.  
 PropertySummaryDescriptionsGets a collection to add summary descriptions to. Changing the summary descriptions in this collection will adjust the summaries applied to the data source.  
 PropertySummaryScopeGets or sets the scope which summaries are calculated for.  
 PropertyUpdateNotifierGets or sets an DataSource update notifier that the data source should invoke methods on to indicate various changes have occurred.  
Public Methods
 NameDescription
 MethodClearPinnedRowsCalled to clear all pinned rows.  
 MethodCloneClones this data source instance, copying the summary, grouping, filter and sorting settings into the new instance.  
 MethodFlushAutoRefreshCalled to make sure a queued refresh of the data source has been applied before continuing. Should only be needed if you are trying to synchronously examine the results of changing settings on the data source. Note, for a virtual data source, the data source itself may be waiting for other synchronous requests to actualize data. This call will not wait for those, but will only make sure the appropriate requests are in flight from the settings changes  
 MethodGetIsRowExpandedAtIndexGets the expansion state for a row.  
 MethodGetItemPropertyExtracts the value of a named property for an item contained in the data source.  
 MethodGetItemPropertyAtIndexExtracts a named property value from the item at a specified index.  
 MethodGetMainValuePathGets the type of row at the specified index.  
 MethodGetRootSummaryResultsGets the summary results for the root level.  
 MethodGetRootSummaryRowCountGets the number of summary rows at the root level.  
 MethodGetRowLevelGets the hierarchy level of the row.  
 MethodGetRowTypeGets the type of row at the specified index.  
 MethodGetSectionSummaryResultsGets the summary results for a specific section.  
 MethodGetStickyRowPriorityGets the priority of a pinned row, which defines how it interacts with other pinned rows.  
 MethodGetStickyRowsGets the indexes of the currently pinned rows relevant to the visible range in index order.  
 MethodGetStickyRowsInRangeGets the indexes of the pinned rows relevant to the provided range in index order.  
 MethodIndexOfItemCalled to return the index for an item contained in the data source, or -1, if the item can't be found, or this action isn't currently supported.  
 MethodIndexOfKeyCalled to return the index for an primary key value contained in the data source, or -1, if the key can't be found, or this action isn't currently supported.  
 MethodIsExclusivelyStickyGets whether the row is allowed to push other sticky rows with the same priority.  
 MethodIsPlaceholderItemReturns true if the item at the requested index is a placeholder item and has not been actualized.  
 MethodIsRowPinnedReturns whether the row is pinned.  
 MethodIsRowSpanningReturns whether the requested row type is considered a spanning element for the data source. Spanning elements have a single complex value rather than the current schema of the data source.  
 MethodPinRowCalled to pin a row by its primary key.  
 MethodQueueAutoRefreshCalled to manually queue a refresh of the data source.  
 MethodRefreshCalled to synchronously refresh the data source.  
 MethodResolveSchemaPropertyTypeResolve a property or property path to its value type.  
 MethodSetIsRowExpandedAtIndexSets the expansion state for a row.  
 MethodUnpinRowCalled to unpin a row by its primary key.  
Public Events
 NameDescription
 EventRootSummariesChanged  
 EventRowExpansionChangedIndicates when a row is expanded or collapsed.  
 EventSchemaChangedIndicates when the schema for the data source has changed. The schema source is not considered valid until there is a populated schema.  
See Also