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
- AnchoredBlock.cs
- XmlnsCompatibleWithAttribute.cs
- OdbcParameterCollection.cs
- AnimationClock.cs
- SocketStream.cs
- AssertFilter.cs
- ProfileProvider.cs
- ObjectDataSourceMethodEventArgs.cs
- _LocalDataStoreMgr.cs
- ExplicitDiscriminatorMap.cs
- ArrangedElement.cs
- isolationinterop.cs
- RSACryptoServiceProvider.cs
- XPathNodeIterator.cs
- COM2ComponentEditor.cs
- InProcStateClientManager.cs
- IssuedTokenServiceElement.cs
- MailBnfHelper.cs
- InstallHelper.cs
- CommonRemoteMemoryBlock.cs
- sqlpipe.cs
- TypographyProperties.cs
- CollectionViewGroupRoot.cs
- ToolboxItemCollection.cs
- RSAPKCS1KeyExchangeFormatter.cs
- HttpCookie.cs
- EncodingInfo.cs
- NavigationProgressEventArgs.cs
- SoundPlayer.cs
- ServiceModelEnumValidatorAttribute.cs
- GZipDecoder.cs
- XsltConvert.cs
- RoutedEvent.cs
- RequestValidator.cs
- UnsignedPublishLicense.cs
- CryptoConfig.cs
- XmlName.cs
- EventTask.cs
- OleStrCAMarshaler.cs
- TextEndOfSegment.cs
- OracleString.cs
- ColumnResizeUndoUnit.cs
- CodeCastExpression.cs
- NetNamedPipeBinding.cs
- UserControl.cs
- ChangeConflicts.cs
- QueryableDataSourceEditData.cs
- SafeReadContext.cs
- NTAccount.cs
- SoapIgnoreAttribute.cs
- WSHttpBinding.cs
- DragStartedEventArgs.cs
- PasswordRecovery.cs
- SoundPlayerAction.cs
- ObjectCloneHelper.cs
- Viewport3DAutomationPeer.cs
- Bidi.cs
- ContractCodeDomInfo.cs
- OleDbDataAdapter.cs
- WebAdminConfigurationHelper.cs
- HtmlElementCollection.cs
- ToolStripItemRenderEventArgs.cs
- Frame.cs
- TextServicesDisplayAttribute.cs
- BaseParagraph.cs
- SHA1.cs
- ThreadPool.cs
- ButtonBaseAdapter.cs
- _AutoWebProxyScriptEngine.cs
- WebPartsPersonalization.cs
- AsynchronousChannelMergeEnumerator.cs
- DispatchChannelSink.cs
- NavigatingCancelEventArgs.cs
- DataGridColumnEventArgs.cs
- StringReader.cs
- OlePropertyStructs.cs
- CapabilitiesAssignment.cs
- WebPartRestoreVerb.cs
- MenuItem.cs
- StorageEntitySetMapping.cs
- ItemChangedEventArgs.cs
- SR.cs
- EditorAttribute.cs
- FileChangesMonitor.cs
- IisTraceWebEventProvider.cs
- Sequence.cs
- MachineKeyConverter.cs
- QueueSurrogate.cs
- InvalidPropValue.cs
- DataStorage.cs
- CodeCatchClauseCollection.cs
- ResXFileRef.cs
- Command.cs
- RepeatBehaviorConverter.cs
- ThreadStaticAttribute.cs
- InitializerFacet.cs
- OperandQuery.cs
- CodeGenerator.cs
- TextView.cs
- HtmlTextBoxAdapter.cs