Code:
/ 4.0 / 4.0 / untmp / DEVDIV_TFS / Dev10 / Releases / RTMRel / ndp / cdf / src / NetFx40 / Tools / System.Activities.Core.Presentation / System / Activities / Core / Presentation / DesignerMetadata.cs / 1305376 / DesignerMetadata.cs
//----------------------------------------------------------------
// Copyright (c) Microsoft Corporation. All rights reserved.
//---------------------------------------------------------------
namespace System.Activities.Core.Presentation
{
using System.Activities.Presentation;
using System.Activities.Presentation.PropertyEditing;
using System.Activities.Presentation.Metadata;
using System.Activities.Statements;
using System.Activities.Validation;
using System.Collections.Generic;
using System.Collections.ObjectModel;
using System.ComponentModel;
using System.ServiceModel;
using System.ServiceModel.Activities;
using System.ServiceModel.Activities.Presentation;
using System.ServiceModel.Presentation;
using System.Workflow.Runtime;
using System.Xml.Linq;
using System.Activities.Presentation.Model;
public class DesignerMetadata : IRegisterMetadata
{
// Called by the designer to register any design-time metadata.
public void Register()
{
AttributeTableBuilder builder = new AttributeTableBuilder();
//shared component
builder.AddCustomAttributes(typeof(Collection), new BrowsableAttribute(false));
builder.AddCustomAttributes(typeof(string), new EditorReuseAttribute(false));
builder.AddCustomAttributes(typeof(ActivityAction), new EditorReuseAttribute(false));
builder.AddCustomAttributes(typeof(XName), new EditorReuseAttribute(false));
//Flowchart activities
FlowchartDesigner.RegisterMetadata(builder);
FlowSwitchDesigner.RegisterMetadata(builder);
FlowDecisionDesigner.RegisterMetadata(builder);
//Messaging activities
ServiceDesigner.RegisterMetadata(builder);
builder.AddCustomAttributes(typeof(InArgument), new EditorReuseAttribute(false));
builder.AddCustomAttributes(typeof(InArgument), new EditorReuseAttribute(false));
builder.AddCustomAttributes(typeof(MessageQuerySet), PropertyValueEditor.CreateEditorAttribute(typeof(CorrelatesOnValueEditor)));
//Registering inline for designers for InitializeCorrelation, Send, Receive, SendReply, ReceiveReply activities to avoid calling
//their static constructors. This will avoid instantiating the ResourceDictionary for their PropertyValueEditors during designer load.
builder.AddCustomAttributes(typeof(Send), new DesignerAttribute(typeof(SendDesigner)));
builder.AddCustomAttributes(typeof(Send), new ActivityDesignerOptionsAttribute { AllowDrillIn = false });
builder.AddCustomAttributes(typeof(Receive), new DesignerAttribute(typeof(ReceiveDesigner)));
builder.AddCustomAttributes(typeof(Receive), new ActivityDesignerOptionsAttribute { AllowDrillIn = false });
builder.AddCustomAttributes(typeof(SendReply), new FeatureAttribute(typeof(SendReplyValidationFeature)));
builder.AddCustomAttributes(typeof(SendReply), new DesignerAttribute(typeof(SendReplyDesigner)));
builder.AddCustomAttributes(typeof(SendReply), new ActivityDesignerOptionsAttribute { AllowDrillIn = false });
CutCopyPasteHelper.AddDisallowedTypeForCopy(typeof(SendReply));
builder.AddCustomAttributes(typeof(ReceiveReply), new FeatureAttribute(typeof(ReceiveReplyValidationFeature)));
builder.AddCustomAttributes(typeof(ReceiveReply), new DesignerAttribute(typeof(ReceiveReplyDesigner)));
builder.AddCustomAttributes(typeof(ReceiveReply), new ActivityDesignerOptionsAttribute { AllowDrillIn = false });
CutCopyPasteHelper.AddDisallowedTypeForCopy(typeof(ReceiveReply));
builder.AddCustomAttributes(typeof(InitializeCorrelation), new DesignerAttribute(typeof(InitializeCorrelationDesigner)));
builder.AddCustomAttributes(typeof(InitializeCorrelation), new ActivityDesignerOptionsAttribute { AllowDrillIn = false });
EndpointDesigner.RegisterMetadata(builder);
TransactedReceiveScopeDesigner.RegisterMetadata(builder);
CorrelationScopeDesigner.RegisterMetadata(builder);
//Procedural activities
AssignDesigner.RegisterMetadata(builder);
IfElseDesigner.RegisterMetadata(builder);
InvokeMethodDesigner.RegisterMetadata(builder);
DoWhileDesigner.RegisterMetadata(builder);
WhileDesigner.RegisterMetadata(builder);
ForEachDesigner.RegisterMetadata(builder);
TryCatchDesigner.RegisterMetadata(builder);
CatchDesigner.RegisterMetadata(builder);
ParallelDesigner.RegisterMetadata(builder);
SequenceDesigner.RegisterMetadata(builder);
SwitchDesigner.RegisterMetadata(builder);
CaseDesigner.RegisterMetadata(builder);
//Compensation/Transaction
CancellationScopeDesigner.RegisterMetadata(builder);
CompensableActivityDesigner.RegisterMetadata(builder);
TransactionScopeDesigner.RegisterMetadata(builder);
//Misc activities
InteropDesigner.RegisterMetadataDelayed();
PickDesigner.RegisterMetadata(builder);
PickBranchDesigner.RegisterMetadata(builder);
WriteLineDesigner.RegisterMetadata(builder);
builder.AddCustomAttributes(typeof(AddToCollection<>), new FeatureAttribute(typeof(UpdatableGenericArgumentsFeature)));
builder.AddCustomAttributes(typeof(RemoveFromCollection<>), new FeatureAttribute(typeof(UpdatableGenericArgumentsFeature)));
builder.AddCustomAttributes(typeof(ClearCollection<>), new FeatureAttribute(typeof(UpdatableGenericArgumentsFeature)));
builder.AddCustomAttributes(typeof(ExistsInCollection<>), new FeatureAttribute(typeof(UpdatableGenericArgumentsFeature)));
builder.AddCustomAttributes(typeof(AddToCollection<>), new DefaultTypeArgumentAttribute(typeof(int)));
builder.AddCustomAttributes(typeof(RemoveFromCollection<>), new DefaultTypeArgumentAttribute(typeof(int)));
builder.AddCustomAttributes(typeof(ClearCollection<>), new DefaultTypeArgumentAttribute(typeof(int)));
builder.AddCustomAttributes(typeof(ExistsInCollection<>), new DefaultTypeArgumentAttribute(typeof(int)));
MetadataStore.AddAttributeTable(builder.CreateTable());
MorphHelper.AddPropertyValueMorphHelper(typeof(InArgument<>), MorphHelpers.ArgumentMorphHelper);
MorphHelper.AddPropertyValueMorphHelper(typeof(OutArgument<>), MorphHelpers.ArgumentMorphHelper);
MorphHelper.AddPropertyValueMorphHelper(typeof(InOutArgument<>), MorphHelpers.ArgumentMorphHelper);
MorphHelper.AddPropertyValueMorphHelper(typeof(ActivityAction<>), MorphHelpers.ActivityActionMorphHelper);
}
}
}
// 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
- DifferencingCollection.cs
- DataGridViewRowDividerDoubleClickEventArgs.cs
- RowCache.cs
- PackageController.cs
- Metafile.cs
- WebPartEventArgs.cs
- BlurBitmapEffect.cs
- HttpHandlerActionCollection.cs
- _FtpDataStream.cs
- HtmlTableCellCollection.cs
- XamlParser.cs
- SelectionEditingBehavior.cs
- figurelengthconverter.cs
- ParameterModifier.cs
- DependencyObject.cs
- XmlWhitespace.cs
- VerticalAlignConverter.cs
- DoubleConverter.cs
- ImageFormatConverter.cs
- InternalUserCancelledException.cs
- StronglyTypedResourceBuilder.cs
- SqlBulkCopy.cs
- ScopelessEnumAttribute.cs
- AccessDataSource.cs
- ZipIOBlockManager.cs
- MLangCodePageEncoding.cs
- ImageButton.cs
- StateBag.cs
- WorkflowRuntimeServicesBehavior.cs
- Pair.cs
- SwitchElementsCollection.cs
- ByteStream.cs
- GestureRecognitionResult.cs
- ResourceFallbackManager.cs
- CqlErrorHelper.cs
- CachedPathData.cs
- VirtualPathUtility.cs
- CompositeTypefaceMetrics.cs
- StrongName.cs
- RegisteredDisposeScript.cs
- TrustLevel.cs
- StructuredTypeEmitter.cs
- AssertUtility.cs
- FragmentNavigationEventArgs.cs
- InheritanceContextHelper.cs
- UnsafeNativeMethods.cs
- OdbcErrorCollection.cs
- SkewTransform.cs
- HtmlWindowCollection.cs
- WindowsUserNameSecurityTokenAuthenticator.cs
- Region.cs
- KeyGestureConverter.cs
- NativeMethods.cs
- BamlBinaryWriter.cs
- QueueSurrogate.cs
- IBuiltInEvidence.cs
- LOSFormatter.cs
- XmlNodeChangedEventManager.cs
- WebPartRestoreVerb.cs
- UInt64.cs
- DbConvert.cs
- SapiRecoInterop.cs
- TypeFieldSchema.cs
- ConsoleTraceListener.cs
- securitycriticaldataClass.cs
- SendingRequestEventArgs.cs
- AnimationClockResource.cs
- ImageClickEventArgs.cs
- LiteralSubsegment.cs
- PointLight.cs
- CaseCqlBlock.cs
- ColumnMapProcessor.cs
- XmlAttributeAttribute.cs
- BadImageFormatException.cs
- FormatterConverter.cs
- ApplicationCommands.cs
- FrameworkElement.cs
- SafeEventLogReadHandle.cs
- InteropBitmapSource.cs
- _NtlmClient.cs
- ListViewCommandEventArgs.cs
- NegotiateStream.cs
- BindingMemberInfo.cs
- Automation.cs
- PagesSection.cs
- recordstatescratchpad.cs
- X509SecurityTokenProvider.cs
- VisualStyleInformation.cs
- WorkItem.cs
- MultiTargetingUtil.cs
- ReadOnlyDataSourceView.cs
- AsynchronousChannelMergeEnumerator.cs
- UIElementPropertyUndoUnit.cs
- DoubleAnimationUsingPath.cs
- FunctionMappingTranslator.cs
- PropertyInformation.cs
- SchemaInfo.cs
- mediapermission.cs
- BinaryConverter.cs
- CheckoutException.cs