Code:
/ 4.0 / 4.0 / untmp / DEVDIV_TFS / Dev10 / Releases / RTMRel / ndp / cdf / src / WF / Activities / ConditionalBranch.cs / 1305376 / ConditionalBranch.cs
namespace System.Workflow.Activities { #region Imports using System; using System.Text; using System.Reflection; using System.Collections; using System.CodeDom; using System.Collections.Generic; using System.ComponentModel; using System.ComponentModel.Design; using System.Drawing; using System.Workflow.ComponentModel; using System.Workflow.ComponentModel.Design; using System.Workflow.ComponentModel.Compiler; using System.Workflow.Activities.Common; #endregion [Designer(typeof(IfElseBranchDesigner), typeof(IDesigner))] [ToolboxItem(false)] [ActivityValidator(typeof(IfElseBranchValidator))] [ToolboxBitmap(typeof(IfElseBranchActivity), "Resources.DecisionBranch.bmp")] [SRCategory(SR.Standard)] public sealed class IfElseBranchActivity: SequenceActivity { public IfElseBranchActivity() { } public IfElseBranchActivity(string name) : base(name) { } //metadata properties go here public static readonly DependencyProperty ConditionProperty = DependencyProperty.Register("Condition", typeof(ActivityCondition), typeof(IfElseBranchActivity), new PropertyMetadata(DependencyPropertyOptions.Metadata)); [SRCategory(SR.Conditions)] [SRDescription(SR.ConditionDescr)] [RefreshProperties(RefreshProperties.Repaint)] [DefaultValue(null)] public ActivityCondition Condition { get { return base.GetValue(ConditionProperty) as ActivityCondition; } set { base.SetValue(ConditionProperty, value); } } } internal sealed class IfElseBranchValidator : CompositeActivityValidator { public override ValidationErrorCollection Validate(ValidationManager manager, object obj) { ValidationErrorCollection validationErrors = base.Validate(manager, obj); IfElseBranchActivity ifElseBranch = obj as IfElseBranchActivity; if (ifElseBranch == null) throw new ArgumentException(SR.GetString(SR.Error_UnexpectedArgumentType, typeof(IfElseBranchActivity).FullName), "obj"); // parent must be conditional IfElseActivity ifElse = ifElseBranch.Parent as IfElseActivity; if(ifElse == null) validationErrors.Add(new ValidationError(SR.GetString(SR.Error_ConditionalBranchParentNotConditional), ErrorNumbers.Error_ConditionalBranchParentNotConditional)); bool isLastBranch = (ifElse != null && ifElse.EnabledActivities.Count > 1 && (ifElse.EnabledActivities[ifElse.EnabledActivities.Count - 1] == ifElseBranch)); if (!isLastBranch || ifElseBranch.Condition != null) { if (ifElseBranch.Condition == null) validationErrors.Add(ValidationError.GetNotSetValidationError("Condition")); } return validationErrors; } } } // 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
- DesignerExtenders.cs
- Native.cs
- VisualStyleElement.cs
- ResourceWriter.cs
- CurrentTimeZone.cs
- Page.cs
- XmlNodeComparer.cs
- XPathScanner.cs
- QuadraticBezierSegment.cs
- PropertyMapper.cs
- QuaternionIndependentAnimationStorage.cs
- EncoderReplacementFallback.cs
- TableFieldsEditor.cs
- DataGridViewRowHeaderCell.cs
- QilFunction.cs
- TextTreeTextBlock.cs
- Number.cs
- WriteTimeStream.cs
- AddInPipelineAttributes.cs
- DataObject.cs
- ControlValuePropertyAttribute.cs
- CharacterMetrics.cs
- ForEachAction.cs
- SocketElement.cs
- ColorConverter.cs
- XmlChildNodes.cs
- SslStreamSecurityUpgradeProvider.cs
- Int32CollectionConverter.cs
- AppDomainGrammarProxy.cs
- StatusBar.cs
- RegexTree.cs
- StaticTextPointer.cs
- XmlCharacterData.cs
- arclist.cs
- DiscriminatorMap.cs
- OdbcPermission.cs
- PointLight.cs
- Translator.cs
- TagPrefixCollection.cs
- XmlDesigner.cs
- CmsInterop.cs
- ResourceReader.cs
- WebAdminConfigurationHelper.cs
- DependencySource.cs
- AlgoModule.cs
- CollectionBuilder.cs
- ScaleTransform.cs
- WindowsComboBox.cs
- TrackingCondition.cs
- CryptoApi.cs
- parserscommon.cs
- CollectionDataContractAttribute.cs
- WindowsListViewItem.cs
- HwndHost.cs
- ZipIOZip64EndOfCentralDirectoryLocatorBlock.cs
- SystemColors.cs
- EventProviderBase.cs
- TrustManagerPromptUI.cs
- ResetableIterator.cs
- XmlWriterTraceListener.cs
- KeyTimeConverter.cs
- IISMapPath.cs
- BaseValidator.cs
- SemanticResolver.cs
- BinaryConverter.cs
- KeyFrames.cs
- Crc32.cs
- PolyBezierSegment.cs
- TableItemStyle.cs
- PreloadedPackages.cs
- Emitter.cs
- NonParentingControl.cs
- AppPool.cs
- ElementFactory.cs
- AuthenticationModuleElement.cs
- XmlChildEnumerator.cs
- IIS7UserPrincipal.cs
- AxHost.cs
- InheritanceRules.cs
- hresults.cs
- XmlExtensionFunction.cs
- TagPrefixCollection.cs
- GACMembershipCondition.cs
- TableLayoutSettingsTypeConverter.cs
- DispatchChannelSink.cs
- GeneratedContractType.cs
- GetPageCompletedEventArgs.cs
- FrameworkContentElement.cs
- WmlCalendarAdapter.cs
- MachineKeySection.cs
- ContainerVisual.cs
- VideoDrawing.cs
- RootBrowserWindow.cs
- BindingSourceDesigner.cs
- CommentEmitter.cs
- SqlMethodAttribute.cs
- ISAPIApplicationHost.cs
- HtmlForm.cs
- Odbc32.cs
- ProcessManager.cs