Code:
/ 4.0 / 4.0 / untmp / DEVDIV_TFS / Dev10 / Releases / RTMRel / ndp / cdf / src / WF / Activities / Code.cs / 1305376 / Code.cs
namespace System.Workflow.Activities { using System; using System.Text; using System.Reflection; using System.Collections; using System.CodeDom; using System.ComponentModel; using System.ComponentModel.Design; using System.Drawing; using System.Workflow.ComponentModel; using System.Workflow.ComponentModel.Design; using System.Workflow.ComponentModel.Serialization; using System.Collections.Generic; using System.Workflow.ComponentModel.Compiler; [SRDescription(SR.CodeActivityDescription)] [ToolboxItem(typeof(ActivityToolboxItem))] [Designer(typeof(CodeDesigner), typeof(IDesigner))] [ToolboxBitmap(typeof(CodeActivity), "Resources.code.png")] [DefaultEvent("ExecuteCode")] [SRCategory(SR.Standard)] [ActivityValidator(typeof(CodeActivityValidator))] public sealed class CodeActivity : Activity { #region Constructors public CodeActivity() { } public CodeActivity(string name) : base(name) { } #endregion public static readonly DependencyProperty ExecuteCodeEvent = DependencyProperty.Register("ExecuteCode", typeof(EventHandler), typeof(CodeActivity)); protected override sealed ActivityExecutionStatus Execute(ActivityExecutionContext executionContext) { base.RaiseEvent(CodeActivity.ExecuteCodeEvent, this, EventArgs.Empty); return ActivityExecutionStatus.Closed; } [SRCategory(SR.Handlers)] [SRDescription(SR.UserCodeHandlerDescr)] [MergableProperty(false)] public event EventHandler ExecuteCode { add { base.AddHandler(ExecuteCodeEvent, value); } remove { base.RemoveHandler(ExecuteCodeEvent, value); } } private class CodeActivityValidator : ActivityValidator { public override ValidationErrorCollection Validate(ValidationManager manager, object obj) { ValidationErrorCollection errors = new ValidationErrorCollection(); CodeActivity code = obj as CodeActivity; if (code == null) throw new InvalidOperationException(); // This violates the P || C validation condition, but we are compiling with csc.exe here! if (code.GetInvocationList(CodeActivity.ExecuteCodeEvent).Length == 0 && code.GetBinding(CodeActivity.ExecuteCodeEvent) == null) { Hashtable hashtable = code.GetValue(WorkflowMarkupSerializer.EventsProperty) as Hashtable; if(hashtable == null || hashtable["ExecuteCode"] == null) errors.Add(ValidationError.GetNotSetValidationError("ExecuteCode")); } errors.AddRange(base.Validate(manager, obj)); return errors; } } } } // File provided for Reference Use Only by Microsoft Corporation (c) 2007. // Copyright (c) Microsoft Corporation. All rights reserved.
Link Menu
This book is available now!
Buy at Amazon US or
Buy at Amazon UK
- ParameterElementCollection.cs
- CompositeDuplexBindingElementImporter.cs
- sitestring.cs
- MemberMaps.cs
- TransformPattern.cs
- TypeValidationEventArgs.cs
- FixedSOMTable.cs
- TypeConverterHelper.cs
- Image.cs
- InkCanvas.cs
- Attributes.cs
- SecureEnvironment.cs
- TextTreeFixupNode.cs
- Point3D.cs
- IIS7UserPrincipal.cs
- BamlBinaryReader.cs
- Model3DGroup.cs
- GenericWebPart.cs
- Column.cs
- ProxyHelper.cs
- BoundPropertyEntry.cs
- ReadWriteObjectLock.cs
- _CacheStreams.cs
- DataGridViewUtilities.cs
- ProxyElement.cs
- ScrollProperties.cs
- CacheRequest.cs
- SystemException.cs
- SingleObjectCollection.cs
- EntityContainerEntitySetDefiningQuery.cs
- EraserBehavior.cs
- Stylesheet.cs
- NativeRightsManagementAPIsStructures.cs
- ForeignKeyConstraint.cs
- StringAttributeCollection.cs
- OdbcHandle.cs
- XmlSchemaObjectTable.cs
- InfoCardMetadataExchangeClient.cs
- RangeValuePattern.cs
- PagesSection.cs
- ContextStaticAttribute.cs
- ProjectionCamera.cs
- PeerApplication.cs
- CoreSwitches.cs
- SystemFonts.cs
- AgileSafeNativeMemoryHandle.cs
- CheckedPointers.cs
- SafeLocalMemHandle.cs
- LicenseException.cs
- HttpFileCollection.cs
- ResourceManager.cs
- SHA384.cs
- _LoggingObject.cs
- ElementsClipboardData.cs
- UnicodeEncoding.cs
- SqlCachedBuffer.cs
- RadioButtonStandardAdapter.cs
- OpCellTreeNode.cs
- MenuStrip.cs
- AddInAdapter.cs
- AuthenticationModuleElementCollection.cs
- BamlMapTable.cs
- XmlText.cs
- CompilerGlobalScopeAttribute.cs
- GroupItemAutomationPeer.cs
- SqlParameterCollection.cs
- ContentTypeSettingClientMessageFormatter.cs
- Image.cs
- QfeChecker.cs
- MsmqActivation.cs
- UIntPtr.cs
- BitmapEffectRenderDataResource.cs
- Msec.cs
- SystemIPGlobalStatistics.cs
- ValidationPropertyAttribute.cs
- TextEndOfLine.cs
- ZoneMembershipCondition.cs
- GlobalAllocSafeHandle.cs
- PreviousTrackingServiceAttribute.cs
- VectorCollectionConverter.cs
- UnsafeNativeMethodsMilCoreApi.cs
- InputLanguageCollection.cs
- XmlIgnoreAttribute.cs
- StylusTip.cs
- ExpressionEvaluator.cs
- BindingCompleteEventArgs.cs
- CompatibleComparer.cs
- InputEventArgs.cs
- SqlVisitor.cs
- TabItemWrapperAutomationPeer.cs
- HttpApplicationFactory.cs
- LogRecordSequence.cs
- NamedObjectList.cs
- SchemaImporterExtension.cs
- WebPartZoneCollection.cs
- lengthconverter.cs
- CharacterMetricsDictionary.cs
- ListViewContainer.cs
- AtomMaterializer.cs
- ValueTable.cs