Code:
/ 4.0 / 4.0 / DEVDIV_TFS / Dev10 / Releases / RTMRel / ndp / cdf / src / NetFx40 / Tools / System.Activities.Presentation / System / Activities / Presentation / Base / Core / PropertyEditing / CategoryEditor.cs / 1305376 / CategoryEditor.cs
namespace System.Activities.Presentation.PropertyEditing { using System; using System.Collections.Generic; using System.ComponentModel; using System.Globalization; using System.Text; using System.Windows; using System.Windows.Media; using System.Activities.Presentation.Internal.Properties; using System.Activities.Presentation; ////// Derive this class to provide a custom CategoryEditor for a set of Properties in a property /// browser host. /// public abstract class CategoryEditor { ////// This method is called once for each property in the category to determine which properties /// are edited by this CategoryEditor. When a property is consumed by a CategoryEditor, it does /// not show up as a separate row in that category. /// /// The PropertyEntry to check to see if its edited by this CategoryEditor ///true if this editor edits that property, otherwise false public abstract bool ConsumesProperty(PropertyEntry propertyEntry); ////// Returns a localized string that indicates which category this editor belongs to. CategoryEditors are /// defined on types and, thus, at load time they need to indicate the actual category they belong to. /// public abstract string TargetCategory { get; } ////// Returns a DataTemplate that is hosted by the PropertyInspector as the UI for a CategoryEditor. /// The DataSource of this DataTemplate is set to a CategoryEntry. /// public abstract DataTemplate EditorTemplate { get; } ////// Returns an object that the host can place into a ContentControl in order to display it. /// This icon may be used to adorn the editor for this category in /// a collapsed mode, should it support one. /// /// The desired size of the image to return. This method should make /// the best attempt in matching the requested size, but it doesn't guarantee it. public abstract object GetImage(Size desiredSize); ////// Utility method that creates a new EditorAttribute for the specified /// CategoryEditor /// /// CategoryEditor instance for which to create /// the new EditorAttribute ///New EditorAttribute for the specified CategoryEditor public static EditorAttribute CreateEditorAttribute(CategoryEditor editor) { if (editor == null) throw FxTrace.Exception.ArgumentNull("editor"); return CreateEditorAttribute(editor.GetType()); } ////// Utility method that creates a new EditorAttribute for the specified /// CategoryEditor type /// /// CategoryEditor type for which to create /// the new EditorAttribute ///New EditorAttribute for the specified CategoryEditor type public static EditorAttribute CreateEditorAttribute(Type categoryEditorType) { if (categoryEditorType == null) throw FxTrace.Exception.ArgumentNull("categoryEditorType"); if (!typeof(CategoryEditor).IsAssignableFrom(categoryEditorType)) throw FxTrace.Exception.AsError(new ArgumentException( string.Format( CultureInfo.CurrentCulture, Resources.Error_ArgIncorrectType, "categoryEditorType", typeof(CategoryEditor).Name))); return new EditorAttribute(categoryEditorType, categoryEditorType); } } } // 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.Collections.Generic; using System.ComponentModel; using System.Globalization; using System.Text; using System.Windows; using System.Windows.Media; using System.Activities.Presentation.Internal.Properties; using System.Activities.Presentation; ////// Derive this class to provide a custom CategoryEditor for a set of Properties in a property /// browser host. /// public abstract class CategoryEditor { ////// This method is called once for each property in the category to determine which properties /// are edited by this CategoryEditor. When a property is consumed by a CategoryEditor, it does /// not show up as a separate row in that category. /// /// The PropertyEntry to check to see if its edited by this CategoryEditor ///true if this editor edits that property, otherwise false public abstract bool ConsumesProperty(PropertyEntry propertyEntry); ////// Returns a localized string that indicates which category this editor belongs to. CategoryEditors are /// defined on types and, thus, at load time they need to indicate the actual category they belong to. /// public abstract string TargetCategory { get; } ////// Returns a DataTemplate that is hosted by the PropertyInspector as the UI for a CategoryEditor. /// The DataSource of this DataTemplate is set to a CategoryEntry. /// public abstract DataTemplate EditorTemplate { get; } ////// Returns an object that the host can place into a ContentControl in order to display it. /// This icon may be used to adorn the editor for this category in /// a collapsed mode, should it support one. /// /// The desired size of the image to return. This method should make /// the best attempt in matching the requested size, but it doesn't guarantee it. public abstract object GetImage(Size desiredSize); ////// Utility method that creates a new EditorAttribute for the specified /// CategoryEditor /// /// CategoryEditor instance for which to create /// the new EditorAttribute ///New EditorAttribute for the specified CategoryEditor public static EditorAttribute CreateEditorAttribute(CategoryEditor editor) { if (editor == null) throw FxTrace.Exception.ArgumentNull("editor"); return CreateEditorAttribute(editor.GetType()); } ////// Utility method that creates a new EditorAttribute for the specified /// CategoryEditor type /// /// CategoryEditor type for which to create /// the new EditorAttribute ///New EditorAttribute for the specified CategoryEditor type public static EditorAttribute CreateEditorAttribute(Type categoryEditorType) { if (categoryEditorType == null) throw FxTrace.Exception.ArgumentNull("categoryEditorType"); if (!typeof(CategoryEditor).IsAssignableFrom(categoryEditorType)) throw FxTrace.Exception.AsError(new ArgumentException( string.Format( CultureInfo.CurrentCulture, Resources.Error_ArgIncorrectType, "categoryEditorType", typeof(CategoryEditor).Name))); return new EditorAttribute(categoryEditorType, categoryEditorType); } } } // 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
- mediaeventshelper.cs
- SafeArrayTypeMismatchException.cs
- StatusBarItemAutomationPeer.cs
- remotingproxy.cs
- CqlParser.cs
- WindowsTitleBar.cs
- StatusBarDesigner.cs
- CustomErrorsSection.cs
- BitSet.cs
- ParserStreamGeometryContext.cs
- TemplateContainer.cs
- EventRecordWrittenEventArgs.cs
- ActivityTypeCodeDomSerializer.cs
- CodeBlockBuilder.cs
- CmsInterop.cs
- ChildTable.cs
- FilterQuery.cs
- XmlWriterSettings.cs
- SimpleRecyclingCache.cs
- RuntimeVariableList.cs
- BufferBuilder.cs
- _NetRes.cs
- FixedSOMLineCollection.cs
- PropertyGridCommands.cs
- FixedDocument.cs
- ObjectItemCollection.cs
- Row.cs
- UncommonField.cs
- ServiceThrottle.cs
- DataViewSettingCollection.cs
- OptimizedTemplateContentHelper.cs
- SqlStream.cs
- TableHeaderCell.cs
- X509WindowsSecurityToken.cs
- ByteStreamMessageEncoderFactory.cs
- Camera.cs
- ThreadInterruptedException.cs
- DataBoundControlHelper.cs
- mansign.cs
- GridViewUpdateEventArgs.cs
- SystemInformation.cs
- ServicePoint.cs
- WorkflowInstance.cs
- HebrewNumber.cs
- HyperLink.cs
- IncrementalHitTester.cs
- GeneralTransform3DTo2D.cs
- PixelFormatConverter.cs
- DbDataReader.cs
- CryptoApi.cs
- ConfigDefinitionUpdates.cs
- WindowHideOrCloseTracker.cs
- TextElementEditingBehaviorAttribute.cs
- RSATokenProvider.cs
- DefaultMemberAttribute.cs
- UdpDiscoveryEndpointElement.cs
- NotifyInputEventArgs.cs
- TimeSpanFormat.cs
- TrackingProfileManager.cs
- EmbeddedMailObjectsCollection.cs
- IPPacketInformation.cs
- SimpleTableProvider.cs
- SmtpSpecifiedPickupDirectoryElement.cs
- InvokeMethodActivity.cs
- WaitForChangedResult.cs
- FormsAuthenticationTicket.cs
- Exceptions.cs
- XmlBufferReader.cs
- DetailsViewUpdateEventArgs.cs
- TargetConverter.cs
- ArithmeticException.cs
- ConfigurationLockCollection.cs
- ToolBarPanel.cs
- PreProcessor.cs
- CompilerResults.cs
- WebPartHelpVerb.cs
- Int32.cs
- TransformerInfoCollection.cs
- XPathSelfQuery.cs
- BinaryQueryOperator.cs
- BaseEntityWrapper.cs
- DodSequenceMerge.cs
- AdjustableArrowCap.cs
- ToolBar.cs
- Compilation.cs
- AnimationException.cs
- XmlLoader.cs
- VirtualPathData.cs
- TraversalRequest.cs
- FastPropertyAccessor.cs
- Blend.cs
- MouseBinding.cs
- Config.cs
- Point.cs
- UnsafeNativeMethods.cs
- RawKeyboardInputReport.cs
- SymbolDocumentInfo.cs
- PrimitiveXmlSerializers.cs
- FileChangeNotifier.cs
- BindingSource.cs