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
- ThreadSafeList.cs
- ChildChangedEventArgs.cs
- MappingMetadataHelper.cs
- LogStore.cs
- XmlCharType.cs
- QueryCorrelationInitializer.cs
- X509CertificateChain.cs
- PageThemeBuildProvider.cs
- DataGridViewSelectedRowCollection.cs
- ISSmlParser.cs
- _Rfc2616CacheValidators.cs
- GridSplitterAutomationPeer.cs
- ThumbAutomationPeer.cs
- Timer.cs
- MemberRelationshipService.cs
- xamlnodes.cs
- ClientBuildManagerTypeDescriptionProviderBridge.cs
- VisemeEventArgs.cs
- TypeTypeConverter.cs
- _CommandStream.cs
- AdornerDecorator.cs
- dataobject.cs
- WorkflowNamespace.cs
- IMembershipProvider.cs
- infer.cs
- XmlArrayItemAttribute.cs
- SqlUtils.cs
- XomlDesignerLoader.cs
- CategoryNameCollection.cs
- PresentationSource.cs
- AnnotationAuthorChangedEventArgs.cs
- AutomationElementIdentifiers.cs
- BlockUIContainer.cs
- ControlBuilder.cs
- TypeDescriptor.cs
- NameValuePair.cs
- SuppressIldasmAttribute.cs
- SmtpMail.cs
- SecurityAlgorithmSuiteConverter.cs
- CheckPair.cs
- XmlILStorageConverter.cs
- Polyline.cs
- ResourcesChangeInfo.cs
- DomNameTable.cs
- LineMetrics.cs
- SafeNativeMethods.cs
- FixedSOMTable.cs
- SqlClientWrapperSmiStream.cs
- DataGridViewImageCell.cs
- Point3DCollectionConverter.cs
- XmlChildEnumerator.cs
- SmiEventStream.cs
- AssociativeAggregationOperator.cs
- TemplateEditingFrame.cs
- ZipIOBlockManager.cs
- PaginationProgressEventArgs.cs
- XhtmlTextWriter.cs
- ArrayConverter.cs
- TextAutomationPeer.cs
- MatrixTransform3D.cs
- EndEvent.cs
- DesignerSerializationVisibilityAttribute.cs
- MethodAccessException.cs
- TypeLoadException.cs
- FontNamesConverter.cs
- TableRowGroup.cs
- RuntimeConfig.cs
- IteratorAsyncResult.cs
- HelpEvent.cs
- SafeProcessHandle.cs
- TimeSpanSecondsConverter.cs
- DbInsertCommandTree.cs
- SortFieldComparer.cs
- COM2PictureConverter.cs
- StateFinalizationActivity.cs
- HybridWebProxyFinder.cs
- ValidatingReaderNodeData.cs
- IInstanceTable.cs
- DataControlReferenceCollection.cs
- DbCommandTree.cs
- BinarySerializer.cs
- MonikerProxyAttribute.cs
- objectquery_tresulttype.cs
- SQLByteStorage.cs
- keycontainerpermission.cs
- PropertyConverter.cs
- XpsFilter.cs
- SystemIPInterfaceStatistics.cs
- RoleGroupCollection.cs
- HitTestWithPointDrawingContextWalker.cs
- SoapSchemaExporter.cs
- GetPageNumberCompletedEventArgs.cs
- Graph.cs
- SplineQuaternionKeyFrame.cs
- PageSettings.cs
- _FixedSizeReader.cs
- FormViewUpdatedEventArgs.cs
- XmlDomTextWriter.cs
- DataGridViewCellEventArgs.cs
- TrackingProfileDeserializationException.cs