Code:
/ 4.0 / 4.0 / untmp / DEVDIV_TFS / Dev10 / Releases / RTMRel / ndp / cdf / src / NetFx40 / System.Activities / System / Activities / IdSpace.cs / 1305376 / IdSpace.cs
//------------------------------------------------------------------------------ // Copyright (c) Microsoft Corporation. All rights reserved. //----------------------------------------------------------------------------- namespace System.Activities { using System; using System.Collections.Generic; using System.Runtime; class IdSpace { int lastId; IListmembers; public IdSpace() { } public IdSpace(IdSpace parent, int parentId) { this.Parent = parent; this.ParentId = parentId; } public IdSpace Parent { get; private set; } public int ParentId { get; private set; } public int MemberCount { get { if (this.members == null) { return 0; } else { return this.members.Count; } } } public Activity Owner { get { if (this.Parent != null) { return this.Parent[this.ParentId]; } return null; } } public Activity this[int id] { get { int lookupId = id - 1; if (this.members == null || lookupId < 0 || lookupId >= this.members.Count) { return null; } else { return this.members[lookupId]; } } } public void AddMember(Activity element) { if (this.members == null) { this.members = new List (); } if (lastId == int.MaxValue) { throw FxTrace.Exception.AsError(new NotSupportedException(SR.OutOfIdSpaceIds)); } lastId++; // ID info is cleared inside InternalId. element.InternalId = lastId; Fx.Assert(element.MemberOf == this, "We should have already set this."); Fx.Assert(this.members.Count == element.InternalId - 1, "We should always be adding the next element"); this.members.Add(element); } public void Dispose() { if (this.members != null) { this.members.Clear(); } this.lastId = 0; this.Parent = null; this.ParentId = 0; } } } // 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
- RangeValidator.cs
- BufferedGraphics.cs
- XmlSchemaSimpleTypeUnion.cs
- XmlSchemaGroupRef.cs
- ChangeConflicts.cs
- XmlWrappingReader.cs
- LinearGradientBrush.cs
- LinkDesigner.cs
- GeneralTransformCollection.cs
- DesignerDeviceConfig.cs
- SqlCacheDependency.cs
- DurableEnlistmentState.cs
- DoubleConverter.cs
- SchemaAttDef.cs
- PenContexts.cs
- HttpBufferlessInputStream.cs
- AnnotationMap.cs
- EventsTab.cs
- RegexGroup.cs
- EFDataModelProvider.cs
- TrackingProfile.cs
- MenuAdapter.cs
- ActivityExecutionContextCollection.cs
- SqlConnectionString.cs
- ImageDesigner.cs
- AssociatedControlConverter.cs
- DrawingContextDrawingContextWalker.cs
- HyperLinkStyle.cs
- documentation.cs
- SubpageParaClient.cs
- ApplicationManager.cs
- TypeLoadException.cs
- TransformedBitmap.cs
- XmlUtil.cs
- ToolBarPanel.cs
- ServicePointManagerElement.cs
- SystemInformation.cs
- NetworkCredential.cs
- DesignTableCollection.cs
- XmlSerializationWriter.cs
- BookmarkNameHelper.cs
- ObjectDataSourceEventArgs.cs
- PageHandlerFactory.cs
- UnmanagedMemoryStream.cs
- DesignTimeTemplateParser.cs
- XmlSchemaChoice.cs
- XmlEncodedRawTextWriter.cs
- IndexedEnumerable.cs
- InheritedPropertyChangedEventArgs.cs
- prompt.cs
- SqlVersion.cs
- XmlToDatasetMap.cs
- BitConverter.cs
- RemotingConfiguration.cs
- SchemeSettingElementCollection.cs
- RootBrowserWindow.cs
- ParserExtension.cs
- SafeRightsManagementPubHandle.cs
- PersistenceParticipant.cs
- TreeNodeCollection.cs
- SQLDecimal.cs
- AbstractDataSvcMapFileLoader.cs
- SqlCommand.cs
- DataObjectSettingDataEventArgs.cs
- Renderer.cs
- Directory.cs
- RuntimeArgumentHandle.cs
- NameSpaceExtractor.cs
- EntityDataSourceView.cs
- SerializableTypeCodeDomSerializer.cs
- XPathMessageFilterElementCollection.cs
- OutputWindow.cs
- ToolStripSeparator.cs
- RangeValidator.cs
- BypassElementCollection.cs
- Collection.cs
- srgsitem.cs
- TextRunTypographyProperties.cs
- ISFTagAndGuidCache.cs
- SettingsBase.cs
- DataGridViewCellStyle.cs
- PageStatePersister.cs
- KeysConverter.cs
- CodeCatchClauseCollection.cs
- DrawingAttributesDefaultValueFactory.cs
- HitTestParameters.cs
- PageAsyncTask.cs
- StickyNoteHelper.cs
- Span.cs
- RemoteCryptoTokenProvider.cs
- GlyphShapingProperties.cs
- MethodImplAttribute.cs
- BitmapEffectCollection.cs
- XmlCharacterData.cs
- WSDualHttpSecurityMode.cs
- ClientData.cs
- DataComponentGenerator.cs
- StrokeNode.cs
- ServiceSettingsResponseInfo.cs
- ConfigsHelper.cs