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
- UriTemplateVariableQueryValue.cs
- IpcManager.cs
- ItemCheckedEvent.cs
- ScrollableControl.cs
- DeploymentExceptionMapper.cs
- Model3D.cs
- TextContainerHelper.cs
- PopOutPanel.cs
- FederatedMessageSecurityOverHttp.cs
- ComplexObject.cs
- IEnumerable.cs
- CodeTypeReferenceExpression.cs
- DependentList.cs
- AssemblyBuilder.cs
- BatchServiceHost.cs
- TransportContext.cs
- StyleBamlTreeBuilder.cs
- TextTrailingCharacterEllipsis.cs
- XmlnsDictionary.cs
- InvokeSchedule.cs
- ClusterSafeNativeMethods.cs
- TextDecorations.cs
- SkipStoryboardToFill.cs
- ValidatingPropertiesEventArgs.cs
- SendKeys.cs
- TextEditorCopyPaste.cs
- PagesSection.cs
- Visual3D.cs
- ObjectStateEntryDbDataRecord.cs
- CachedFontFamily.cs
- QueryableDataSourceEditData.cs
- VectorConverter.cs
- SqlXmlStorage.cs
- AdornerDecorator.cs
- HtmlElement.cs
- Mapping.cs
- dbenumerator.cs
- Container.cs
- DefaultTextStore.cs
- KeyValueInternalCollection.cs
- ZipIOCentralDirectoryBlock.cs
- PerspectiveCamera.cs
- ApplicationServiceHelper.cs
- UnknownBitmapDecoder.cs
- AddInToken.cs
- JpegBitmapEncoder.cs
- DataGridAutomationPeer.cs
- WebBrowsableAttribute.cs
- ApplicationCommands.cs
- TypeSystemProvider.cs
- Vector3DKeyFrameCollection.cs
- ConfigXmlElement.cs
- RestHandler.cs
- ItemsControl.cs
- DbConnectionPool.cs
- GridViewRow.cs
- ActivitySurrogateSelector.cs
- SerializerDescriptor.cs
- RequiredFieldValidator.cs
- FormsAuthentication.cs
- OleDbConnectionInternal.cs
- Brushes.cs
- ISAPIWorkerRequest.cs
- Convert.cs
- FileVersion.cs
- HistoryEventArgs.cs
- MinMaxParagraphWidth.cs
- SoundPlayerAction.cs
- IPeerNeighbor.cs
- SizeIndependentAnimationStorage.cs
- DBDataPermissionAttribute.cs
- XmlEntity.cs
- ColorConvertedBitmapExtension.cs
- QueryAccessibilityHelpEvent.cs
- Int16Storage.cs
- TableItemPatternIdentifiers.cs
- HttpListenerException.cs
- XhtmlBasicTextBoxAdapter.cs
- FilterQuery.cs
- ResourcePermissionBase.cs
- DataGridViewTextBoxColumn.cs
- SemanticAnalyzer.cs
- VirtualPathExtension.cs
- WorkflowInstanceRecord.cs
- DuplicateWaitObjectException.cs
- MenuAdapter.cs
- FreezableDefaultValueFactory.cs
- EventHandlers.cs
- DataRelationPropertyDescriptor.cs
- BooleanAnimationBase.cs
- WorkflowTraceTransfer.cs
- ViewManager.cs
- ChangeConflicts.cs
- Size3DValueSerializer.cs
- ContextMenuService.cs
- Tokenizer.cs
- GridViewRowCollection.cs
- SimpleApplicationHost.cs
- DataTableNewRowEvent.cs
- DownloadProgressEventArgs.cs