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
- Drawing.cs
- SqlNodeAnnotation.cs
- returneventsaver.cs
- PrivilegedConfigurationManager.cs
- ProviderMetadataCachedInformation.cs
- WebPartDeleteVerb.cs
- PropertyFilterAttribute.cs
- StretchValidation.cs
- OperationAbortedException.cs
- CapabilitiesPattern.cs
- DbTransaction.cs
- TextSchema.cs
- ApplicationInterop.cs
- ParseHttpDate.cs
- ChtmlImageAdapter.cs
- AsymmetricCryptoHandle.cs
- AuthenticationConfig.cs
- safex509handles.cs
- XmlProcessingInstruction.cs
- TextRange.cs
- GridViewCancelEditEventArgs.cs
- SplayTreeNode.cs
- InstanceHandleReference.cs
- XmlSchemaSimpleTypeList.cs
- DiscreteKeyFrames.cs
- ExpressionConverter.cs
- DigestTraceRecordHelper.cs
- XmlNodeChangedEventArgs.cs
- Padding.cs
- TypeListConverter.cs
- ExtensionWindowHeader.cs
- MetadataItemCollectionFactory.cs
- StrokeRenderer.cs
- DynamicPropertyHolder.cs
- UdpSocketReceiveManager.cs
- MenuRenderer.cs
- XmlIterators.cs
- QuaternionConverter.cs
- EventSourceCreationData.cs
- MessageSecurityOverMsmqElement.cs
- WindowsEditBox.cs
- FileVersionInfo.cs
- DynamicPropertyHolder.cs
- EncryptedXml.cs
- StrongName.cs
- Expression.cs
- DataException.cs
- SecurityManager.cs
- Invariant.cs
- BrowserTree.cs
- GrabHandleGlyph.cs
- CaseExpr.cs
- BamlLocalizerErrorNotifyEventArgs.cs
- IndentedWriter.cs
- ScriptingScriptResourceHandlerSection.cs
- ButtonChrome.cs
- StreamHelper.cs
- WorkItem.cs
- MILUtilities.cs
- WinFormsComponentEditor.cs
- TableCellsCollectionEditor.cs
- DynamicPropertyReader.cs
- EngineSiteSapi.cs
- ButtonChrome.cs
- DNS.cs
- XamlFigureLengthSerializer.cs
- OperationFormatUse.cs
- unsafenativemethodsother.cs
- RotateTransform3D.cs
- XsdCachingReader.cs
- __FastResourceComparer.cs
- FigureParaClient.cs
- ToolStripLabel.cs
- FlowLayoutPanelDesigner.cs
- MobileSysDescriptionAttribute.cs
- StructuredType.cs
- ToolStripDesignerAvailabilityAttribute.cs
- DeviceContext2.cs
- ChtmlMobileTextWriter.cs
- RouteParser.cs
- UnhandledExceptionEventArgs.cs
- ConvertersCollection.cs
- DbgUtil.cs
- UnknownBitmapEncoder.cs
- CapabilitiesSection.cs
- TypedReference.cs
- DragAssistanceManager.cs
- ProfileGroupSettings.cs
- BrowserCapabilitiesFactory.cs
- HwndSourceKeyboardInputSite.cs
- FunctionOverloadResolver.cs
- PathGeometry.cs
- KnownTypesHelper.cs
- PolyQuadraticBezierSegment.cs
- XomlSerializationHelpers.cs
- UriPrefixTable.cs
- TextSelectionProcessor.cs
- XamlReaderHelper.cs
- HashCodeCombiner.cs
- ListenerElementsCollection.cs