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
- PeoplePickerWrapper.cs
- clipboard.cs
- LocalFileSettingsProvider.cs
- AxWrapperGen.cs
- EntityDataSourceDataSelection.cs
- ParameterBuilder.cs
- FigureParagraph.cs
- ContainerSelectorBehavior.cs
- BaseUriHelper.cs
- Method.cs
- CharAnimationUsingKeyFrames.cs
- ByteAnimationBase.cs
- ScalarOps.cs
- RoleService.cs
- ListSurrogate.cs
- RangeContentEnumerator.cs
- ListViewTableRow.cs
- SimpleRecyclingCache.cs
- DateTimeOffsetConverter.cs
- XslUrlEditor.cs
- OracleSqlParser.cs
- Visual3D.cs
- FormatterServices.cs
- ParameterCollection.cs
- TrackingProfileDeserializationException.cs
- DataRowView.cs
- DropDownList.cs
- Model3DGroup.cs
- CommandHelpers.cs
- PointCollection.cs
- XPathScanner.cs
- ProtocolElement.cs
- RawUIStateInputReport.cs
- PersistenceIOParticipant.cs
- XmlHierarchyData.cs
- XmlSchemaGroup.cs
- SafeNativeMethods.cs
- UrlPath.cs
- Wizard.cs
- DoubleConverter.cs
- FormatSettings.cs
- WebRequestModulesSection.cs
- EntityDesignerBuildProvider.cs
- ClientTargetSection.cs
- RelatedEnd.cs
- ViewStateModeByIdAttribute.cs
- ListChangedEventArgs.cs
- Path.cs
- WorkflowMarkupSerializationProvider.cs
- Select.cs
- DocumentViewerBase.cs
- FixedTextView.cs
- SafeFileMapViewHandle.cs
- CommandDesigner.cs
- ToolStripRendererSwitcher.cs
- RestHandlerFactory.cs
- DataPagerCommandEventArgs.cs
- MultiSelector.cs
- XamlFilter.cs
- DataGridCell.cs
- ToolStripRendererSwitcher.cs
- MissingMethodException.cs
- Encoding.cs
- ChildDocumentBlock.cs
- UrlPropertyAttribute.cs
- SuppressMessageAttribute.cs
- XDRSchema.cs
- RtfFormatStack.cs
- HostedHttpTransportManager.cs
- SelectorItemAutomationPeer.cs
- DesignerCommandAdapter.cs
- ScaleTransform.cs
- InvalidCommandTreeException.cs
- CodePageUtils.cs
- Attributes.cs
- XmlWriterSettings.cs
- TextParagraphProperties.cs
- Route.cs
- _AutoWebProxyScriptEngine.cs
- MarginsConverter.cs
- HttpCapabilitiesBase.cs
- HtmlGenericControl.cs
- AdapterDictionary.cs
- ConstNode.cs
- TypeConverterAttribute.cs
- DataSvcMapFileSerializer.cs
- StylusPointDescription.cs
- MetabaseServerConfig.cs
- DispatcherSynchronizationContext.cs
- ComPlusInstanceProvider.cs
- remotingproxy.cs
- PagesSection.cs
- XPathDocumentIterator.cs
- SiteMapSection.cs
- DataObjectCopyingEventArgs.cs
- HttpResponseInternalBase.cs
- ApplicationFileParser.cs
- SoapFault.cs
- AdPostCacheSubstitution.cs
- SafeBitVector32.cs