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
- ToolboxItemFilterAttribute.cs
- GacUtil.cs
- SortedSetDebugView.cs
- DataGridTextBox.cs
- WebPartDisplayModeCancelEventArgs.cs
- SafeWaitHandle.cs
- HttpResponseWrapper.cs
- QueryAsyncResult.cs
- StandardBindingElementCollection.cs
- ClientSponsor.cs
- SystemIPGlobalStatistics.cs
- TableStyle.cs
- Paragraph.cs
- PrintingPermission.cs
- ProtocolState.cs
- DependencyObjectType.cs
- DataSourceView.cs
- MessageDroppedTraceRecord.cs
- TouchPoint.cs
- ExpressionWriter.cs
- FileChangesMonitor.cs
- ParagraphResult.cs
- ProviderConnectionPoint.cs
- _HeaderInfoTable.cs
- DataGridViewCellStyleConverter.cs
- XPathConvert.cs
- ServiceHostingEnvironmentSection.cs
- EntityDataSourceView.cs
- SecurityCredentialsManager.cs
- BufferBuilder.cs
- RowVisual.cs
- LoadItemsEventArgs.cs
- ExpressionBuilderCollection.cs
- ValuePattern.cs
- SystemInformation.cs
- RectangleF.cs
- EntityContainer.cs
- TraceFilter.cs
- SoapExtensionImporter.cs
- Soap.cs
- WorkflowRuntimeServicesBehavior.cs
- AbstractSvcMapFileLoader.cs
- ReflectTypeDescriptionProvider.cs
- DocumentViewerHelper.cs
- DEREncoding.cs
- QilPatternVisitor.cs
- FixedSOMContainer.cs
- ECDiffieHellmanCng.cs
- VerificationAttribute.cs
- RouteParameter.cs
- ImageSourceConverter.cs
- UIElement3DAutomationPeer.cs
- DiscoveryCallbackBehavior.cs
- ItemsControl.cs
- ListBindableAttribute.cs
- OutputScopeManager.cs
- ExceptionRoutedEventArgs.cs
- CodeSubDirectory.cs
- TypedReference.cs
- ThreadNeutralSemaphore.cs
- Connector.xaml.cs
- StateItem.cs
- UxThemeWrapper.cs
- AssemblyBuilderData.cs
- Validator.cs
- SoapClientProtocol.cs
- arc.cs
- OleCmdHelper.cs
- MeasureItemEvent.cs
- CreateDataSourceDialog.cs
- SqlProcedureAttribute.cs
- ToolStripOverflowButton.cs
- FileDialog_Vista_Interop.cs
- RangeValidator.cs
- PropertyManager.cs
- DispatcherHooks.cs
- XmlCompatibilityReader.cs
- Pair.cs
- _CacheStreams.cs
- TdsValueSetter.cs
- PrePostDescendentsWalker.cs
- Hashtable.cs
- PasswordTextNavigator.cs
- SqlDataSourceCommandEventArgs.cs
- DefaultParameterValueAttribute.cs
- ChannelManager.cs
- XmlUtilWriter.cs
- LabelLiteral.cs
- XamlStyleSerializer.cs
- SiteMapProvider.cs
- CodeAccessSecurityEngine.cs
- diagnosticsswitches.cs
- hresults.cs
- EpmCustomContentDeSerializer.cs
- ConstNode.cs
- SelectionItemPattern.cs
- HttpWrapper.cs
- filewebresponse.cs
- CompositeCollectionView.cs
- RunInstallerAttribute.cs