Code:
/ 4.0 / 4.0 / untmp / DEVDIV_TFS / Dev10 / Releases / RTMRel / ndp / cdf / src / NetFx40 / System.Activities / System / Activities / Statements / FlowDecision.cs / 1305376 / FlowDecision.cs
//------------------------------------------------------------------------------
// Copyright (c) Microsoft Corporation. All rights reserved.
//-----------------------------------------------------------------------------
namespace System.Activities.Statements
{
using System;
using System.Activities;
using System.Activities.Expressions;
using System.Collections.Generic;
using System.ComponentModel;
using System.Linq.Expressions;
using System.Windows.Markup;
public sealed class FlowDecision : FlowNode
{
public FlowDecision()
{
}
public FlowDecision(Expression> condition)
: this()
{
if (condition == null)
{
throw FxTrace.Exception.ArgumentNull("condition");
}
this.Condition = new LambdaValue(condition);
}
public FlowDecision(Activity condition)
: this()
{
if (condition == null)
{
throw FxTrace.Exception.ArgumentNull("condition");
}
this.Condition = condition;
}
[DefaultValue(null)]
public Activity Condition
{
get;
set;
}
[DefaultValue(null)]
[DependsOn("Condition")]
public FlowNode True
{
get;
set;
}
[DefaultValue(null)]
[DependsOn("True")]
public FlowNode False
{
get;
set;
}
internal override void OnOpen(Flowchart owner, NativeActivityMetadata metadata)
{
if (this.Condition == null)
{
metadata.AddValidationError(SR.FlowDecisionRequiresCondition(owner.DisplayName));
}
}
internal override void GetConnectedNodes(IList connections)
{
if (True != null)
{
connections.Add(True);
}
if (False != null)
{
connections.Add(False);
}
}
internal override void GetChildActivities(ICollection children)
{
if (Condition != null)
{
children.Add(Condition);
}
}
internal bool Execute(NativeActivityContext context, CompletionCallback onConditionCompleted)
{
context.ScheduleActivity(Condition, onConditionCompleted);
return false;
}
}
}
// 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
- CatalogPart.cs
- NativeMsmqMessage.cs
- SystemWebSectionGroup.cs
- RemotingAttributes.cs
- HierarchicalDataTemplate.cs
- BitmapEffect.cs
- _ListenerRequestStream.cs
- CheckableControlBaseAdapter.cs
- StreamUpgradeBindingElement.cs
- IOException.cs
- RectIndependentAnimationStorage.cs
- ProtocolsConfigurationEntry.cs
- SafeFindHandle.cs
- ErrorEventArgs.cs
- BitStack.cs
- CompilationSection.cs
- PropertyEntry.cs
- ButtonColumn.cs
- CheckBoxBaseAdapter.cs
- Unit.cs
- Decimal.cs
- ReadOnlyMetadataCollection.cs
- DeviceContexts.cs
- Vars.cs
- BinaryConverter.cs
- ContentDefinition.cs
- Double.cs
- TriggerCollection.cs
- PeerApplication.cs
- baseshape.cs
- Certificate.cs
- StorageEntityTypeMapping.cs
- TypedTableBase.cs
- ExpandedWrapper.cs
- XmlObjectSerializerReadContext.cs
- FormViewDeleteEventArgs.cs
- ServiceReference.cs
- DurableErrorHandler.cs
- DefaultShape.cs
- ListViewSortEventArgs.cs
- ActiveXSerializer.cs
- InfoCardTrace.cs
- StylusShape.cs
- DateTime.cs
- TextEffectResolver.cs
- FieldTemplateUserControl.cs
- xdrvalidator.cs
- DocumentAutomationPeer.cs
- UpdateCommand.cs
- hwndwrapper.cs
- FontStyleConverter.cs
- WeakReferenceEnumerator.cs
- TemplatePartAttribute.cs
- PartialClassGenerationTaskInternal.cs
- DispatcherOperation.cs
- LockCookie.cs
- ConfigXmlSignificantWhitespace.cs
- FileSecurity.cs
- ItemDragEvent.cs
- AmbientValueAttribute.cs
- SemaphoreSecurity.cs
- NamespaceDisplay.xaml.cs
- TextDecorationCollectionConverter.cs
- XmlNamespaceMappingCollection.cs
- IdnElement.cs
- DbProviderManifest.cs
- DocumentSchemaValidator.cs
- JsonFaultDetail.cs
- DefaultValueTypeConverter.cs
- XsltContext.cs
- ButtonStandardAdapter.cs
- Documentation.cs
- ConditionalAttribute.cs
- SqlExpander.cs
- ImageList.cs
- DateTimeConverter2.cs
- TreeIterators.cs
- ExpressionBuilderContext.cs
- CounterSetInstance.cs
- DiagnosticsConfigurationHandler.cs
- ToolStripProgressBar.cs
- Imaging.cs
- WorkflowDesignerMessageFilter.cs
- PropertyEntry.cs
- ProvidersHelper.cs
- RadialGradientBrush.cs
- SymbolDocumentInfo.cs
- PointLight.cs
- Message.cs
- TcpClientChannel.cs
- PermissionSet.cs
- CachingHintValidation.cs
- MemberInitExpression.cs
- BigInt.cs
- PolyQuadraticBezierSegment.cs
- ProcessProtocolHandler.cs
- ToolStripTextBox.cs
- FreezableCollection.cs
- Separator.cs
- SqlNodeTypeOperators.cs