Code:
/ 4.0 / 4.0 / untmp / 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.
Link Menu

This book is available now!
Buy at Amazon US or
Buy at Amazon UK
- TreeChangeInfo.cs
- BrushProxy.cs
- HttpHandlerActionCollection.cs
- ResourceManagerWrapper.cs
- TrustManagerMoreInformation.cs
- IImplicitResourceProvider.cs
- MetadataCache.cs
- BuildManagerHost.cs
- FocusWithinProperty.cs
- TemplateControl.cs
- RemotingSurrogateSelector.cs
- HtmlEncodedRawTextWriter.cs
- ConditionalExpression.cs
- IDQuery.cs
- ManualResetEventSlim.cs
- CodeVariableDeclarationStatement.cs
- InternalConfigRoot.cs
- TransformerConfigurationWizardBase.cs
- FreeFormDragDropManager.cs
- GenericWebPart.cs
- WebPartZone.cs
- WebPartConnectionsDisconnectVerb.cs
- DataBoundLiteralControl.cs
- IPHostEntry.cs
- XmlSerializationGeneratedCode.cs
- HScrollBar.cs
- RelationshipSet.cs
- ErrorTableItemStyle.cs
- HostedTransportConfigurationManager.cs
- BookmarkTable.cs
- NameSpaceExtractor.cs
- XmlReaderDelegator.cs
- QueryResults.cs
- VirtualPathExtension.cs
- StringFormat.cs
- ExpiredSecurityTokenException.cs
- BitmapEffectState.cs
- ZipIOLocalFileDataDescriptor.cs
- SqlXmlStorage.cs
- PopOutPanel.cs
- EdmMember.cs
- HtmlCommandAdapter.cs
- UdpDiscoveryEndpointElement.cs
- ApplySecurityAndSendAsyncResult.cs
- BooleanStorage.cs
- DependencyPropertyAttribute.cs
- RectangleHotSpot.cs
- MessageQueueConverter.cs
- TextMetrics.cs
- CodePropertyReferenceExpression.cs
- GPRECT.cs
- CodeTypeParameterCollection.cs
- OdbcEnvironmentHandle.cs
- MemberAssignmentAnalysis.cs
- ConnectionPoolManager.cs
- DecimalAnimationBase.cs
- XamlDesignerSerializationManager.cs
- VirtualPathData.cs
- RelatedPropertyManager.cs
- XD.cs
- GridItemPatternIdentifiers.cs
- PeerChannelListener.cs
- SoapElementAttribute.cs
- ProfileSection.cs
- HashCodeCombiner.cs
- CodePageUtils.cs
- XomlCompilerError.cs
- CanonicalXml.cs
- EnumValidator.cs
- InstanceKeyCompleteException.cs
- DateTimeStorage.cs
- IFlowDocumentViewer.cs
- WebPartDesigner.cs
- SqlBulkCopy.cs
- MouseButtonEventArgs.cs
- SQLMoney.cs
- SafeCryptoHandles.cs
- SmtpSection.cs
- ObjectViewFactory.cs
- MetadataItemSerializer.cs
- XmlKeywords.cs
- EncodingInfo.cs
- ModifiableIteratorCollection.cs
- TrackBarRenderer.cs
- UMPAttributes.cs
- AnnotationObservableCollection.cs
- SqlTopReducer.cs
- NumberFunctions.cs
- UnsafeNativeMethods.cs
- FirewallWrapper.cs
- TextOptionsInternal.cs
- XmlSerializerFaultFormatter.cs
- PackWebResponse.cs
- CommandID.cs
- InternalTypeHelper.cs
- PartitionedDataSource.cs
- ButtonField.cs
- SystemIcons.cs
- MemberRestriction.cs
- ParagraphVisual.cs