Code:
/ 4.0 / 4.0 / DEVDIV_TFS / Dev10 / Releases / RTMRel / ndp / cdf / src / NetFx40 / Tools / System.Activities.Presentation / System / Activities / Presentation / Base / Core / PropertyEditing / PropertyValueEditor.cs / 1305376 / PropertyValueEditor.cs
namespace System.Activities.Presentation.PropertyEditing { using System; using System.ComponentModel; using System.Globalization; using System.Text; using System.Windows; using System.Activities.Presentation.Internal.Properties; using System.Activities.Presentation; using System.Runtime; ////// Container for any and all inline editor logic for properties. This class can hold /// a single DataTemplates - one for Inline editor. /// public class PropertyValueEditor { private DataTemplate _inlineEditorTemplate; ////// Creates a PropertyValueEditor /// public PropertyValueEditor() { } ////// Creates a PropertyValueEditor /// /// The DataTemplate that is used for an inline editor. /// This DataTemplate has its DataContext set to a PropertyValue public PropertyValueEditor(DataTemplate inlineEditorTemplate) { _inlineEditorTemplate = inlineEditorTemplate; } ////// Gets or sets the InlineEditorTemplate -- the DataTemplate that is used for an inline editor. /// This DataTemplate has its DataContext set to a PropertyValue /// [Fx.Tag.KnownXamlExternalAttribute] public DataTemplate InlineEditorTemplate { get { return _inlineEditorTemplate; } set { _inlineEditorTemplate = value; } } internal virtual DataTemplate GetPropertyValueEditor(PropertyContainerEditMode mode) { return (mode == PropertyContainerEditMode.Inline) ? _inlineEditorTemplate : null; } ////// Utility method that creates a new EditorAttribute for the specified /// PropertyValueEditor /// /// PropertyValueEditor instance for which to create /// the new EditorAttribute ///New EditorAttribute for the specified PropertyValueEditor public static EditorAttribute CreateEditorAttribute(PropertyValueEditor editor) { if (editor == null) throw FxTrace.Exception.ArgumentNull("editor"); return CreateEditorAttribute(editor.GetType()); } ////// Utility method that creates a new EditorAttribute for the specified /// PropertyValueEditor type /// /// PropertyValueEditor type for which to create /// the new EditorAttribute ///New EditorAttribute for the specified PropertyValueEditor type public static EditorAttribute CreateEditorAttribute(Type propertyValueEditorType) { if (propertyValueEditorType == null) throw FxTrace.Exception.ArgumentNull("propertyValueEditorType"); if (!typeof(PropertyValueEditor).IsAssignableFrom(propertyValueEditorType)) throw FxTrace.Exception.AsError(new ArgumentException( string.Format( CultureInfo.CurrentCulture, Resources.Error_ArgIncorrectType, "propertyValueEditorType", typeof(PropertyValueEditor).Name))); return new EditorAttribute(propertyValueEditorType, typeof(PropertyValueEditor)); } } } // File provided for Reference Use Only by Microsoft Corporation (c) 2007. // Copyright (c) Microsoft Corporation. All rights reserved. namespace System.Activities.Presentation.PropertyEditing { using System; using System.ComponentModel; using System.Globalization; using System.Text; using System.Windows; using System.Activities.Presentation.Internal.Properties; using System.Activities.Presentation; using System.Runtime; ////// Container for any and all inline editor logic for properties. This class can hold /// a single DataTemplates - one for Inline editor. /// public class PropertyValueEditor { private DataTemplate _inlineEditorTemplate; ////// Creates a PropertyValueEditor /// public PropertyValueEditor() { } ////// Creates a PropertyValueEditor /// /// The DataTemplate that is used for an inline editor. /// This DataTemplate has its DataContext set to a PropertyValue public PropertyValueEditor(DataTemplate inlineEditorTemplate) { _inlineEditorTemplate = inlineEditorTemplate; } ////// Gets or sets the InlineEditorTemplate -- the DataTemplate that is used for an inline editor. /// This DataTemplate has its DataContext set to a PropertyValue /// [Fx.Tag.KnownXamlExternalAttribute] public DataTemplate InlineEditorTemplate { get { return _inlineEditorTemplate; } set { _inlineEditorTemplate = value; } } internal virtual DataTemplate GetPropertyValueEditor(PropertyContainerEditMode mode) { return (mode == PropertyContainerEditMode.Inline) ? _inlineEditorTemplate : null; } ////// Utility method that creates a new EditorAttribute for the specified /// PropertyValueEditor /// /// PropertyValueEditor instance for which to create /// the new EditorAttribute ///New EditorAttribute for the specified PropertyValueEditor public static EditorAttribute CreateEditorAttribute(PropertyValueEditor editor) { if (editor == null) throw FxTrace.Exception.ArgumentNull("editor"); return CreateEditorAttribute(editor.GetType()); } ////// Utility method that creates a new EditorAttribute for the specified /// PropertyValueEditor type /// /// PropertyValueEditor type for which to create /// the new EditorAttribute ///New EditorAttribute for the specified PropertyValueEditor type public static EditorAttribute CreateEditorAttribute(Type propertyValueEditorType) { if (propertyValueEditorType == null) throw FxTrace.Exception.ArgumentNull("propertyValueEditorType"); if (!typeof(PropertyValueEditor).IsAssignableFrom(propertyValueEditorType)) throw FxTrace.Exception.AsError(new ArgumentException( string.Format( CultureInfo.CurrentCulture, Resources.Error_ArgIncorrectType, "propertyValueEditorType", typeof(PropertyValueEditor).Name))); return new EditorAttribute(propertyValueEditorType, typeof(PropertyValueEditor)); } } } // 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
- VolatileResourceManager.cs
- DiagnosticsConfiguration.cs
- StringConcat.cs
- InstanceContextMode.cs
- HostedElements.cs
- SelectionGlyphBase.cs
- EncoderBestFitFallback.cs
- SqlDataSourceAdvancedOptionsForm.cs
- HandlerWithFactory.cs
- ListViewInsertionMark.cs
- PermissionSetEnumerator.cs
- Part.cs
- NamespaceList.cs
- ScrollEvent.cs
- ToolStripDropTargetManager.cs
- DetailsViewUpdatedEventArgs.cs
- LocalizableResourceBuilder.cs
- CodeDomDesignerLoader.cs
- FlowDocument.cs
- WorkflowDebuggerSteppingAttribute.cs
- webbrowsersite.cs
- Int16KeyFrameCollection.cs
- Base64Decoder.cs
- VoiceSynthesis.cs
- TransformCollection.cs
- ExpandCollapsePatternIdentifiers.cs
- PolyQuadraticBezierSegment.cs
- CollectionBase.cs
- BufferedStream.cs
- NativeMethods.cs
- StylusDownEventArgs.cs
- SudsParser.cs
- CodeDefaultValueExpression.cs
- TaiwanLunisolarCalendar.cs
- StringPropertyBuilder.cs
- ThaiBuddhistCalendar.cs
- XmlSchemaElement.cs
- PrinterUnitConvert.cs
- SqlTransaction.cs
- Attributes.cs
- InputReport.cs
- SqlUDTStorage.cs
- DrawTreeNodeEventArgs.cs
- Stack.cs
- ProcessModuleDesigner.cs
- DynamicPropertyReader.cs
- LayoutEngine.cs
- CompilerResults.cs
- ContextMarshalException.cs
- TypeViewSchema.cs
- SecureStringHasher.cs
- CompilerScope.cs
- XmlWriterTraceListener.cs
- SecurityMessageProperty.cs
- DynamicMetaObjectBinder.cs
- EdmEntityTypeAttribute.cs
- NominalTypeEliminator.cs
- CriticalHandle.cs
- SoapHttpTransportImporter.cs
- ReaderOutput.cs
- Propagator.JoinPropagator.cs
- EntitySqlQueryBuilder.cs
- ObjectSet.cs
- SerialPort.cs
- PageStatePersister.cs
- SimpleWorkerRequest.cs
- SRGSCompiler.cs
- xmlfixedPageInfo.cs
- PropertyToken.cs
- AudioBase.cs
- Lease.cs
- _ShellExpression.cs
- Menu.cs
- HttpEncoderUtility.cs
- StaticFileHandler.cs
- ProjectionPruner.cs
- HtmlContainerControl.cs
- AppDomainAttributes.cs
- RuntimeResourceSet.cs
- BoundPropertyEntry.cs
- SqlReferenceCollection.cs
- _SingleItemRequestCache.cs
- CategoryNameCollection.cs
- Utils.cs
- ListViewAutomationPeer.cs
- Parameter.cs
- VectorAnimationBase.cs
- DataContractJsonSerializer.cs
- PageContent.cs
- HttpProfileBase.cs
- ImageField.cs
- ResourceContainer.cs
- XmlSerializerSection.cs
- Regex.cs
- CommandHelper.cs
- UICuesEvent.cs
- RuntimeConfigLKG.cs
- TdsParserSafeHandles.cs
- Tablet.cs
- TemplateControl.cs