Code:
/ FXUpdate3074 / FXUpdate3074 / 1.1 / untmp / whidbey / QFE / ndp / fx / src / xsp / System / Web / UI / WebControls / ReadOnlyHierarchicalDataSource.cs / 1 / ReadOnlyHierarchicalDataSource.cs
//------------------------------------------------------------------------------ //// Copyright (c) Microsoft Corporation. All rights reserved. // //----------------------------------------------------------------------------- namespace System.Web.UI.WebControls { using System; using System.Collections; using System.ComponentModel; using System.Web; using System.Web.UI; using System.Web.Util; ////// Helper class for hierarchical data bound controls to wrap an generic /// data source with a strongly typed IHierarchicalDataSource. This class /// automatically handles other IHierarchicalDataSources and /// IHierarchicalEnumerables. This class uses /// ReadOnlyHierarchicalDataSourceView to represent individual views. /// internal sealed class ReadOnlyHierarchicalDataSource : IHierarchicalDataSource { private object _dataSource; public ReadOnlyHierarchicalDataSource(object dataSource) { Debug.Assert(dataSource == null || (dataSource is IHierarchicalEnumerable || dataSource is IHierarchicalDataSource), "Expected dataSource to be either null, an IHierarchicalEnumerable, or an IHierarchicalDataSource."); _dataSource = dataSource; } #region Implementation of IHierarchicalDataSource event EventHandler IHierarchicalDataSource.DataSourceChanged { add { } remove { } } ////// Check for IHierarchicalDataSource and IHierarchicalEnumerable, and /// return an approprite HierarchicalDataSourceView. /// HierarchicalDataSourceView IHierarchicalDataSource.GetHierarchicalView(string viewPath) { // Check first for IHierarchicalDataSource IHierarchicalDataSource ds = _dataSource as IHierarchicalDataSource; if (ds != null) { return ds.GetHierarchicalView(viewPath); } IHierarchicalEnumerable enumerable = _dataSource as IHierarchicalEnumerable; if (enumerable != null && viewPath != null && viewPath.Length != 0) { throw new InvalidOperationException(SR.GetString(SR.ReadOnlyHierarchicalDataSourceView_CantAccessPathInEnumerable)); } return new ReadOnlyHierarchicalDataSourceView(enumerable); } #endregion } } // File provided for Reference Use Only by Microsoft Corporation (c) 2007. // Copyright (c) Microsoft Corporation. All rights reserved.
Link Menu
This book is available now!
Buy at Amazon US or
Buy at Amazon UK
- MouseActionValueSerializer.cs
- HttpListenerContext.cs
- TrackingWorkflowEventArgs.cs
- AssemblyNameProxy.cs
- PermissionToken.cs
- CodeParameterDeclarationExpressionCollection.cs
- DeviceContext2.cs
- Policy.cs
- CacheChildrenQuery.cs
- DebugTracing.cs
- DataServiceRequest.cs
- EpmSourcePathSegment.cs
- NativeMethods.cs
- ClientEventManager.cs
- SimpleType.cs
- HostUtils.cs
- ListViewGroupConverter.cs
- ClientConfigurationSystem.cs
- DependencyPropertyValueSerializer.cs
- TextModifier.cs
- CodeVariableReferenceExpression.cs
- TypeGenericEnumerableViewSchema.cs
- DataObject.cs
- WorkflowOperationFault.cs
- MetadataItemEmitter.cs
- SiteMapDataSourceView.cs
- BindingMemberInfo.cs
- StreamGeometry.cs
- SafeRightsManagementEnvironmentHandle.cs
- ParallelTimeline.cs
- SiteMapNodeItem.cs
- ControlBuilderAttribute.cs
- Missing.cs
- PropertyGridCommands.cs
- LinearGradientBrush.cs
- XamlStream.cs
- EventSinkHelperWriter.cs
- WindowsRegion.cs
- ChangeBlockUndoRecord.cs
- CapabilitiesState.cs
- PointF.cs
- EntitySetRetriever.cs
- ChangeNode.cs
- SqlCacheDependencyDatabaseCollection.cs
- AsyncPostBackErrorEventArgs.cs
- MethodToken.cs
- BitVec.cs
- SafeFileHandle.cs
- NullRuntimeConfig.cs
- ExpressionParser.cs
- BuildDependencySet.cs
- Stroke.cs
- smtpconnection.cs
- IntAverageAggregationOperator.cs
- WebPartDescription.cs
- CodeAccessPermission.cs
- XXXOnTypeBuilderInstantiation.cs
- TransactionFlowOption.cs
- RectAnimationUsingKeyFrames.cs
- _ShellExpression.cs
- ListView.cs
- ResourceReferenceExpressionConverter.cs
- NamespaceEmitter.cs
- AccessDataSourceDesigner.cs
- RightsManagementInformation.cs
- DataSpaceManager.cs
- Timer.cs
- DesignOnlyAttribute.cs
- UnsignedPublishLicense.cs
- _ScatterGatherBuffers.cs
- Wildcard.cs
- XmlElementElementCollection.cs
- TransactionFlowAttribute.cs
- LambdaCompiler.Unary.cs
- WorkflowHostingEndpoint.cs
- TextServicesDisplayAttributePropertyRanges.cs
- HtmlSelect.cs
- OutputCacheModule.cs
- ReflectionPermission.cs
- BeginStoryboard.cs
- AsyncOperationManager.cs
- DataTableMappingCollection.cs
- Helpers.cs
- Comparer.cs
- DataGridViewCellEventArgs.cs
- CompModSwitches.cs
- PointF.cs
- IgnoreSectionHandler.cs
- ToolStripLocationCancelEventArgs.cs
- wpf-etw.cs
- MembershipSection.cs
- ServiceChannelManager.cs
- Profiler.cs
- WindowsFormsHostPropertyMap.cs
- XNodeValidator.cs
- PropertyTabAttribute.cs
- PartialCachingControl.cs
- CriticalFinalizerObject.cs
- ProgressPage.cs
- TypeContext.cs