Code:
/ 4.0 / 4.0 / DEVDIV_TFS / Dev10 / Releases / RTMRel / ndp / cdf / src / NetFx40 / Tools / System.Activities.Presentation / System / Activities / Presentation / Base / Interaction / Model / ModelFactory.cs / 1305376 / ModelFactory.cs
namespace System.Activities.Presentation.Model { using System.Activities.Presentation.Services; using System.Activities.Presentation; using System; ////// The ModelFactory class should be used to create instances /// of items in the designer. ModelFactory is designed to be /// a static API for convenience. The underlying implementation /// of this API simply calls through to the ModelService’s /// CreateItem method. /// public static class ModelFactory { ////// Creates a new item for the given item type. /// /// /// The designer's editing context. /// /// /// The type of item to create. /// /// /// An optional array of arguments that should be passed to the constructor of the item. /// ////// The newly created item type. /// ///if itemType or context is null. ///if there is no editing model in the context that can create new items. public static ModelItem CreateItem(EditingContext context, Type itemType, params object[] arguments) { return CreateItem(context, itemType, CreateOptions.None, arguments); } ////// Creates a new item for the given item type. /// /// /// The designer's editing context. /// /// /// The type of item to create. /// /// /// A set of create options to use when creating the item. The default value is CreateOptions.None. /// /// /// An optional array of arguments that should be passed to the constructor of the item. /// ////// The newly created item type. /// ///if itemType or context is null. ///if there is no editing model in the context that can create new items. public static ModelItem CreateItem(EditingContext context, Type itemType, CreateOptions options, params object[] arguments) { if (context == null) throw FxTrace.Exception.ArgumentNull("context"); if (itemType == null) throw FxTrace.Exception.ArgumentNull("itemType"); if (!EnumValidator.IsValid(options)) throw FxTrace.Exception.AsError(new ArgumentOutOfRangeException("options")); ModelService ms = context.Services.GetRequiredService(); return ms.InvokeCreateItem(itemType, options, arguments); } /// /// Creates a new model item by creating a deep copy of the isntance provided. /// /// /// The designer's editing context. /// /// /// The item to clone. /// ////// The newly created item. /// public static ModelItem CreateItem(EditingContext context, object item) { if (context == null) throw FxTrace.Exception.ArgumentNull("context"); if (item == null) throw FxTrace.Exception.ArgumentNull("item"); ModelService ms = context.Services.GetRequiredService(); return ms.InvokeCreateItem(item); } /// /// Create a new model item that represents a the value of a static member of a the given class. /// For example, to add a reference to Brushes.Red to the model call this methods with /// typeof(Brushes) and the string "Red". This will be serialized into XAML as /// {x:Static Brushes.Red}. /// /// /// The designer's editing context. /// /// /// The type that contains the static member being referenced. /// /// /// The name of the static member being referenced. /// ///public static ModelItem CreateStaticMemberItem(EditingContext context, Type type, string memberName) { if (context == null) throw FxTrace.Exception.ArgumentNull("context"); if (type == null) throw FxTrace.Exception.ArgumentNull("type"); if (memberName == null) throw FxTrace.Exception.ArgumentNull("memberName"); ModelService ms = context.Services.GetRequiredService (); return ms.InvokeCreateStaticMemberItem(type, memberName); } } } // File provided for Reference Use Only by Microsoft Corporation (c) 2007. // Copyright (c) Microsoft Corporation. All rights reserved. namespace System.Activities.Presentation.Model { using System.Activities.Presentation.Services; using System.Activities.Presentation; using System; /// /// The ModelFactory class should be used to create instances /// of items in the designer. ModelFactory is designed to be /// a static API for convenience. The underlying implementation /// of this API simply calls through to the ModelService’s /// CreateItem method. /// public static class ModelFactory { ////// Creates a new item for the given item type. /// /// /// The designer's editing context. /// /// /// The type of item to create. /// /// /// An optional array of arguments that should be passed to the constructor of the item. /// ////// The newly created item type. /// ///if itemType or context is null. ///if there is no editing model in the context that can create new items. public static ModelItem CreateItem(EditingContext context, Type itemType, params object[] arguments) { return CreateItem(context, itemType, CreateOptions.None, arguments); } ////// Creates a new item for the given item type. /// /// /// The designer's editing context. /// /// /// The type of item to create. /// /// /// A set of create options to use when creating the item. The default value is CreateOptions.None. /// /// /// An optional array of arguments that should be passed to the constructor of the item. /// ////// The newly created item type. /// ///if itemType or context is null. ///if there is no editing model in the context that can create new items. public static ModelItem CreateItem(EditingContext context, Type itemType, CreateOptions options, params object[] arguments) { if (context == null) throw FxTrace.Exception.ArgumentNull("context"); if (itemType == null) throw FxTrace.Exception.ArgumentNull("itemType"); if (!EnumValidator.IsValid(options)) throw FxTrace.Exception.AsError(new ArgumentOutOfRangeException("options")); ModelService ms = context.Services.GetRequiredService(); return ms.InvokeCreateItem(itemType, options, arguments); } /// /// Creates a new model item by creating a deep copy of the isntance provided. /// /// /// The designer's editing context. /// /// /// The item to clone. /// ////// The newly created item. /// public static ModelItem CreateItem(EditingContext context, object item) { if (context == null) throw FxTrace.Exception.ArgumentNull("context"); if (item == null) throw FxTrace.Exception.ArgumentNull("item"); ModelService ms = context.Services.GetRequiredService(); return ms.InvokeCreateItem(item); } /// /// Create a new model item that represents a the value of a static member of a the given class. /// For example, to add a reference to Brushes.Red to the model call this methods with /// typeof(Brushes) and the string "Red". This will be serialized into XAML as /// {x:Static Brushes.Red}. /// /// /// The designer's editing context. /// /// /// The type that contains the static member being referenced. /// /// /// The name of the static member being referenced. /// ///public static ModelItem CreateStaticMemberItem(EditingContext context, Type type, string memberName) { if (context == null) throw FxTrace.Exception.ArgumentNull("context"); if (type == null) throw FxTrace.Exception.ArgumentNull("type"); if (memberName == null) throw FxTrace.Exception.ArgumentNull("memberName"); ModelService ms = context.Services.GetRequiredService (); return ms.InvokeCreateStaticMemberItem(type, memberName); } } } // 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
- SqlFacetAttribute.cs
- Facet.cs
- DispatcherHooks.cs
- BaseTemplateBuildProvider.cs
- ReliableOutputConnection.cs
- DrawingVisualDrawingContext.cs
- ColorInterpolationModeValidation.cs
- XmlTextReaderImpl.cs
- DrawingContextWalker.cs
- ImageConverter.cs
- CopyNamespacesAction.cs
- SiteMembershipCondition.cs
- DefaultPrintController.cs
- RootBrowserWindowProxy.cs
- EntitySqlQueryCacheKey.cs
- Converter.cs
- SizeConverter.cs
- FlowLayout.cs
- DropDownList.cs
- CombinedGeometry.cs
- FormatterConverter.cs
- ElementHostPropertyMap.cs
- EndpointBehaviorElement.cs
- SignatureHelper.cs
- DocumentReferenceCollection.cs
- Label.cs
- TextCompositionEventArgs.cs
- CSharpCodeProvider.cs
- DataServiceStreamResponse.cs
- LocationUpdates.cs
- InfoCardRSAPKCS1SignatureFormatter.cs
- ResXDataNode.cs
- DateTimeFormatInfoScanner.cs
- WebHttpSecurity.cs
- DropShadowBitmapEffect.cs
- SqlConnection.cs
- TextSpan.cs
- OnOperation.cs
- WebScriptClientGenerator.cs
- ClientRuntimeConfig.cs
- SQLByteStorage.cs
- InputLanguageManager.cs
- ObjectDataSourceMethodEventArgs.cs
- CellCreator.cs
- SupportedAddressingMode.cs
- MimeTypeMapper.cs
- GeometryCombineModeValidation.cs
- DesignerLoader.cs
- DataGridItem.cs
- RadialGradientBrush.cs
- DispatchChannelSink.cs
- ConnectionInterfaceCollection.cs
- _HeaderInfo.cs
- Point3DAnimationUsingKeyFrames.cs
- PreviewKeyDownEventArgs.cs
- ModelFunction.cs
- FixedDSBuilder.cs
- DbProviderFactoriesConfigurationHandler.cs
- RoutedUICommand.cs
- SQLBinaryStorage.cs
- X509SecurityTokenProvider.cs
- OutputScopeManager.cs
- PathGradientBrush.cs
- InfiniteTimeSpanConverter.cs
- Rotation3DKeyFrameCollection.cs
- DecoderFallbackWithFailureFlag.cs
- ConfigurationValue.cs
- SynchronizationContext.cs
- WindowsFormsSectionHandler.cs
- SecurityTokenProvider.cs
- _FtpDataStream.cs
- CaseInsensitiveComparer.cs
- FlowLayoutPanel.cs
- MetadataCache.cs
- ByValueEqualityComparer.cs
- ValidationEventArgs.cs
- SequentialWorkflowRootDesigner.cs
- FusionWrap.cs
- TextServicesDisplayAttributePropertyRanges.cs
- IgnoreSectionHandler.cs
- InternalBase.cs
- CodeTypeReferenceExpression.cs
- AutomationAttributeInfo.cs
- ThemeableAttribute.cs
- List.cs
- VariableExpressionConverter.cs
- SqlDependencyUtils.cs
- FileVersion.cs
- DesignerLoader.cs
- SmiContext.cs
- SQLInt32.cs
- Size.cs
- ToolStripDropDownButton.cs
- ContainerSelectorActiveEvent.cs
- XmlQualifiedNameTest.cs
- PolyBezierSegmentFigureLogic.cs
- AesCryptoServiceProvider.cs
- ObjectDataSourceMethodEventArgs.cs
- DataServiceCollectionOfT.cs
- ValidatorCollection.cs