Code:
/ 4.0 / 4.0 / untmp / DEVDIV_TFS / Dev10 / Releases / RTMRel / ndp / cdf / src / NetFx40 / System.Activities / System / Activities / Expressions / ArrayItemReference.cs / 1305376 / ArrayItemReference.cs
//------------------------------------------------------------------------------ // Copyright (c) Microsoft Corporation. All rights reserved. //----------------------------------------------------------------------------- namespace System.Activities.Expressions { using System.Activities.Statements; using System.Collections.Generic; using System.Collections.ObjectModel; using System.ComponentModel; using System.Runtime.Serialization; public sealed class ArrayItemReference: CodeActivity > { public ArrayItemReference() : base() { } [RequiredArgument] [DefaultValue(null)] public InArgument Array { get; set; } [RequiredArgument] [DefaultValue(null)] public InArgument Index { get; set; } protected override void CacheMetadata(CodeActivityMetadata metadata) { RuntimeArgument arrayArgument = new RuntimeArgument("Array", typeof(TItem[]), ArgumentDirection.In, true); metadata.Bind(this.Array, arrayArgument); RuntimeArgument indexArgument = new RuntimeArgument("Index", typeof(int), ArgumentDirection.In, true); metadata.Bind(this.Index, indexArgument); RuntimeArgument resultArgument = new RuntimeArgument("Result", typeof(Location ), ArgumentDirection.Out); metadata.Bind(this.Result, resultArgument); metadata.SetArgumentsCollection( new Collection { arrayArgument, indexArgument, resultArgument }); } protected override Location Execute(CodeActivityContext context) { TItem[] items = this.Array.Get(context); if (items == null) { throw FxTrace.Exception.AsError(new InvalidOperationException(SR.MemberCannotBeNull("Array", this.GetType().Name, this.DisplayName))); } int itemIndex = this.Index.Get(context); return new ArrayLocation(items, itemIndex); } [DataContract] class ArrayLocation : Location { [DataMember] TItem[] array; [DataMember(EmitDefaultValue = false)] int index; public ArrayLocation(TItem[] array, int index) : base() { this.array = array; this.index = index; } public override TItem Value { get { return this.array[this.index]; } set { this.array[this.index] = value; } } } } } // 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
- QueryOperatorEnumerator.cs
- DataServiceProcessingPipelineEventArgs.cs
- ActivityScheduledRecord.cs
- ByteKeyFrameCollection.cs
- XmlSchemaImporter.cs
- Events.cs
- CreatingCookieEventArgs.cs
- SystemUnicastIPAddressInformation.cs
- ToolStripSettings.cs
- _OSSOCK.cs
- HuffModule.cs
- CroppedBitmap.cs
- ConvertersCollection.cs
- DependencyProperty.cs
- FlatButtonAppearance.cs
- SerializationSectionGroup.cs
- FormViewDeleteEventArgs.cs
- CommandSet.cs
- RtfControlWordInfo.cs
- AssemblyBuilderData.cs
- _Win32.cs
- NativeMethods.cs
- StylusOverProperty.cs
- SqlDataSourceStatusEventArgs.cs
- TrackingRecord.cs
- LinqDataView.cs
- QilXmlReader.cs
- TextOutput.cs
- ToolStripManager.cs
- WindowVisualStateTracker.cs
- BindingListCollectionView.cs
- IndentedWriter.cs
- SortKey.cs
- __Filters.cs
- DtcInterfaces.cs
- WebBrowserNavigatingEventHandler.cs
- PartitionedDataSource.cs
- DATA_BLOB.cs
- XmlAutoDetectWriter.cs
- WrapPanel.cs
- TripleDES.cs
- X509CertificateCollection.cs
- MetabaseSettings.cs
- TriggerBase.cs
- KeyValuePair.cs
- EntityDataSourceChangingEventArgs.cs
- BatchStream.cs
- AffineTransform3D.cs
- PointAnimation.cs
- OracleCommandBuilder.cs
- QilSortKey.cs
- IdentitySection.cs
- PropertyGridCommands.cs
- SharedRuntimeState.cs
- SafeThemeHandle.cs
- CommittableTransaction.cs
- SpellCheck.cs
- SafeFileMappingHandle.cs
- Guid.cs
- EdmFunction.cs
- dsa.cs
- BlurBitmapEffect.cs
- HttpServerVarsCollection.cs
- HttpListenerTimeoutManager.cs
- DataGridViewCellConverter.cs
- NavigatorInput.cs
- TabControlToolboxItem.cs
- IResourceProvider.cs
- DbException.cs
- IsolatedStorageException.cs
- Codec.cs
- DataKeyArray.cs
- MissingManifestResourceException.cs
- UriTemplatePathSegment.cs
- WorkflowInstance.cs
- SpeechRecognitionEngine.cs
- HandledEventArgs.cs
- CompilerScopeManager.cs
- SafeProcessHandle.cs
- IgnoreSectionHandler.cs
- HelpProvider.cs
- ReadOnlyDataSource.cs
- WindowsSlider.cs
- log.cs
- InternalDispatchObject.cs
- HostedTcpTransportManager.cs
- BypassElement.cs
- HttpWrapper.cs
- ITextView.cs
- JsonFormatReaderGenerator.cs
- TypeSource.cs
- CompilationUtil.cs
- BufferedReadStream.cs
- util.cs
- EntityFrameworkVersions.cs
- Utils.cs
- ServiceBusyException.cs
- X509Utils.cs
- Errors.cs
- LongValidatorAttribute.cs