Code:
/ Dotnetfx_Vista_SP2 / Dotnetfx_Vista_SP2 / 8.0.50727.4016 / DEVDIV / depot / DevDiv / releases / whidbey / NetFxQFE / 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. // //----------------------------------------------------------------------------- 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.
Link Menu
This book is available now!
Buy at Amazon US or
Buy at Amazon UK
- SiteMembershipCondition.cs
- OdbcUtils.cs
- MimeObjectFactory.cs
- ReadOnlyCollection.cs
- NotFiniteNumberException.cs
- XslException.cs
- XmlAttributeCollection.cs
- NoPersistHandle.cs
- Codec.cs
- MenuItemStyle.cs
- DataGridPageChangedEventArgs.cs
- ReflectPropertyDescriptor.cs
- TdsParserStateObject.cs
- CustomPopupPlacement.cs
- ArrangedElement.cs
- BasicCommandTreeVisitor.cs
- ApplicationInfo.cs
- FontCacheUtil.cs
- NamedObject.cs
- CodeExpressionCollection.cs
- ErrorProvider.cs
- AssemblyHash.cs
- AnyAllSearchOperator.cs
- StrokeNode.cs
- ProvideValueServiceProvider.cs
- ServiceReference.cs
- ThicknessAnimationBase.cs
- XmlDataCollection.cs
- DetailsViewDeleteEventArgs.cs
- Substitution.cs
- LogicalExpr.cs
- XmlDocumentFragment.cs
- QilGenerator.cs
- StringSource.cs
- Parser.cs
- DefaultPropertyAttribute.cs
- EmptyStringExpandableObjectConverter.cs
- OdbcFactory.cs
- ScopedKnownTypes.cs
- QilFactory.cs
- CreateUserWizardStep.cs
- ScrollChrome.cs
- PropertyConverter.cs
- VectorAnimationBase.cs
- MethodRental.cs
- ColumnCollectionEditor.cs
- LiteralTextContainerControlBuilder.cs
- EncryptedKey.cs
- MemberExpression.cs
- FileDialog.cs
- JapaneseCalendar.cs
- EntityCommand.cs
- webproxy.cs
- UpdateException.cs
- ListViewSortEventArgs.cs
- DocumentViewerBaseAutomationPeer.cs
- URLIdentityPermission.cs
- ContractMapping.cs
- ArgumentException.cs
- Stylus.cs
- ProgressBarHighlightConverter.cs
- DocumentSchemaValidator.cs
- ConnectionInterfaceCollection.cs
- InputElement.cs
- DragEventArgs.cs
- TrustLevel.cs
- CacheVirtualItemsEvent.cs
- CalloutQueueItem.cs
- TdsParserSafeHandles.cs
- Subtree.cs
- Msec.cs
- StandardOleMarshalObject.cs
- RequestCacheValidator.cs
- Scene3D.cs
- BitArray.cs
- Expr.cs
- SiteIdentityPermission.cs
- CqlParserHelpers.cs
- ConnectionManagementSection.cs
- LocalizationCodeDomSerializer.cs
- DirectoryGroupQuery.cs
- XmlNavigatorFilter.cs
- XmlWrappingReader.cs
- ServiceSecurityContext.cs
- SpecialFolderEnumConverter.cs
- Model3D.cs
- InputQueue.cs
- StorageModelBuildProvider.cs
- ToolStripContainer.cs
- CaseInsensitiveHashCodeProvider.cs
- WriteFileContext.cs
- recordstatefactory.cs
- QueryMatcher.cs
- WebResourceAttribute.cs
- PreviousTrackingServiceAttribute.cs
- MarkupExtensionReturnTypeAttribute.cs
- WindowsSlider.cs
- SqlDataSourceSelectingEventArgs.cs
- AssemblyUtil.cs
- Cursor.cs