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
- StyleBamlTreeBuilder.cs
- XmlSignatureManifest.cs
- ToolStripLocationCancelEventArgs.cs
- TextEditorCharacters.cs
- ConcurrentQueue.cs
- SqlProvider.cs
- Transform.cs
- FloaterBaseParaClient.cs
- Rect3DValueSerializer.cs
- BooleanToSelectiveScrollingOrientationConverter.cs
- SourceChangedEventArgs.cs
- TextBoxAutoCompleteSourceConverter.cs
- TabControlCancelEvent.cs
- WebResourceUtil.cs
- TabControlAutomationPeer.cs
- ReferenceConverter.cs
- ListSortDescription.cs
- EntityException.cs
- NetNamedPipeSecurityElement.cs
- ScopeElement.cs
- GradientStopCollection.cs
- LockRecursionException.cs
- MultiTouchSystemGestureLogic.cs
- XmlHierarchicalEnumerable.cs
- ComboBoxRenderer.cs
- ManipulationInertiaStartingEventArgs.cs
- ScalarConstant.cs
- CodeLabeledStatement.cs
- SessionState.cs
- _NestedSingleAsyncResult.cs
- WebPartConnection.cs
- StreamResourceInfo.cs
- TreeViewItem.cs
- SqlBuffer.cs
- MediaContextNotificationWindow.cs
- CodeTryCatchFinallyStatement.cs
- ToolStripArrowRenderEventArgs.cs
- CommonXSendMessage.cs
- Formatter.cs
- SingleKeyFrameCollection.cs
- NameService.cs
- WebSysDescriptionAttribute.cs
- TabRenderer.cs
- MemberDomainMap.cs
- ConditionBrowserDialog.cs
- AspNetRouteServiceHttpHandler.cs
- TraceFilter.cs
- FileDialogCustomPlaces.cs
- BooleanExpr.cs
- ExtensibleClassFactory.cs
- EventDescriptorCollection.cs
- HttpSysSettings.cs
- Enum.cs
- UnknownBitmapDecoder.cs
- DictionaryGlobals.cs
- DragStartedEventArgs.cs
- PreProcessInputEventArgs.cs
- RuntimeArgumentHandle.cs
- XmlnsCompatibleWithAttribute.cs
- DataServiceQueryOfT.cs
- HttpAsyncResult.cs
- LabelInfo.cs
- AudienceUriMode.cs
- MissingMemberException.cs
- UserNameSecurityTokenParameters.cs
- Attribute.cs
- WorkflowQueue.cs
- WindowsSecurityToken.cs
- DataBindingExpressionBuilder.cs
- AsyncStreamReader.cs
- DataKey.cs
- Comparer.cs
- IndexOutOfRangeException.cs
- PointLightBase.cs
- DateBoldEvent.cs
- StreamingContext.cs
- Sentence.cs
- ThaiBuddhistCalendar.cs
- MailAddress.cs
- TextEffectResolver.cs
- CollectionType.cs
- BasicKeyConstraint.cs
- XMLSchema.cs
- TextInfo.cs
- FormatterServices.cs
- Page.cs
- XmlUtil.cs
- StringBuilder.cs
- HttpDebugHandler.cs
- tabpagecollectioneditor.cs
- DynamicRenderer.cs
- RichTextBox.cs
- FrameworkContentElement.cs
- safelink.cs
- ExpressionBuilder.cs
- Util.cs
- GridViewDeleteEventArgs.cs
- InputScopeManager.cs
- MinMaxParagraphWidth.cs
- Point3D.cs