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 / categoryentry.cs / 1305376 / categoryentry.cs
namespace System.Activities.Presentation.PropertyEditing { using System.ComponentModel; using System.Diagnostics; using System.Collections.Generic; using System.Collections.ObjectModel; using System.Activities.Presentation; using System; ////// The CategoryEntry class is a part of the property editing object model. It models a /// Category which has a localized name along with a collection of properties. /// public abstract class CategoryEntry : INotifyPropertyChanged, IPropertyFilterTarget { private string _name; private bool _matchesFilter; ////// Creates a new CategoryEntry. For host Infrastructure use /// /// The localized name of the corresponding Category as defined by the /// CategoryAttribute ///When name is either empty or null. protected CategoryEntry(string name) { if (string.IsNullOrEmpty(name)) throw FxTrace.Exception.ArgumentNull("name"); _name = name; } ////// Returns the localized Category name /// public string CategoryName { get { return _name; } } ////// Returns an IEnumerable collection of all of the properties in the category. /// public abstract IEnumerableProperties { get; } /// /// Indexer that returns a Property instance given the property name. /// /// The string property name to return a Property instance for. ///Property corresponding to the passed in propertyName if it exists, otherwise null public abstract PropertyEntry this[string propertyName] { get; } // INotifyPropertyChanged Members ////// INotifyPropertyChanged event /// public event PropertyChangedEventHandler PropertyChanged; ////// Raises the INotifyPropertyChanged.PropertyChanged event /// /// the name of the property that is changing ///When propertyName is null protected virtual void OnPropertyChanged(string propertyName) { if (propertyName == null) throw FxTrace.Exception.ArgumentNull("propertyName"); if (PropertyChanged != null) { PropertyChanged(this, new PropertyChangedEventArgs(propertyName)); } } // IPropertyFilterTarget Members ////// IPropertyFilterTarget event /// public event EventHandlerFilterApplied; /// /// Raises the IPropertyFilterTarget.FilterApplied event /// /// The PropertyFilter being applied protected virtual void OnFilterApplied(PropertyFilter filter) { if (FilterApplied != null) { FilterApplied(this, new PropertyFilterAppliedEventArgs(filter)); } } ////// IPropertyFilterTarget method /// /// public virtual void ApplyFilter(PropertyFilter filter) { this.MatchesFilter = filter == null ? true : filter.Match(this); OnFilterApplied(filter); } ////// IPropertyFilterTarget property /// public virtual bool MatchesFilter { get { return _matchesFilter; } protected set { if (_matchesFilter != value) { _matchesFilter = value; this.OnPropertyChanged("MatchesFilter"); } } } ////// IPropertyFilterTarget method /// /// The PropertyFilterPredicate to match against ///true if there is a match, otherwise false public abstract bool MatchesPredicate(PropertyFilterPredicate predicate); } } // 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
- SamlAuthenticationClaimResource.cs
- EncryptedData.cs
- BindValidator.cs
- InfoCardSymmetricAlgorithm.cs
- XmlElementList.cs
- ThreadSafeMessageFilterTable.cs
- DataSourceHelper.cs
- BaseTemplateParser.cs
- XmlEncoding.cs
- PartitionedStream.cs
- InstalledVoice.cs
- InfoCardSymmetricCrypto.cs
- DataGridViewToolTip.cs
- Slider.cs
- SafeReversePInvokeHandle.cs
- CommandManager.cs
- StylusPointPropertyId.cs
- AnnotationDocumentPaginator.cs
- ModulesEntry.cs
- COM2IVsPerPropertyBrowsingHandler.cs
- ThicknessAnimationBase.cs
- SelectionItemPattern.cs
- LogicalCallContext.cs
- InkPresenter.cs
- PassportPrincipal.cs
- TogglePattern.cs
- ContractMapping.cs
- ListDictionary.cs
- SourceItem.cs
- TimeZone.cs
- PriorityChain.cs
- HtmlInputCheckBox.cs
- ProfilePropertySettingsCollection.cs
- XmlNamespaceMappingCollection.cs
- OracleConnection.cs
- BypassElementCollection.cs
- Renderer.cs
- SqlGatherConsumedAliases.cs
- SettingsPropertyIsReadOnlyException.cs
- PersonalizationDictionary.cs
- TrimSurroundingWhitespaceAttribute.cs
- PngBitmapEncoder.cs
- IDQuery.cs
- ButtonBase.cs
- HebrewNumber.cs
- PathData.cs
- RangeBase.cs
- MediaElementAutomationPeer.cs
- OdbcDataAdapter.cs
- AttributeParameterInfo.cs
- DataTrigger.cs
- PnrpPermission.cs
- TaiwanLunisolarCalendar.cs
- WindowShowOrOpenTracker.cs
- PointKeyFrameCollection.cs
- CompositionTarget.cs
- TransactedBatchingElement.cs
- WpfGeneratedKnownTypes.cs
- DoubleMinMaxAggregationOperator.cs
- DaylightTime.cs
- BoundingRectTracker.cs
- __Error.cs
- JournalNavigationScope.cs
- ExtensionWindowHeader.cs
- SliderAutomationPeer.cs
- InputGestureCollection.cs
- dbenumerator.cs
- ItemChangedEventArgs.cs
- OutputCacheSettings.cs
- NullExtension.cs
- CollectionViewProxy.cs
- Point.cs
- PositiveTimeSpanValidatorAttribute.cs
- AliasExpr.cs
- SiteMapSection.cs
- SqlErrorCollection.cs
- Version.cs
- XhtmlBasicLabelAdapter.cs
- ExpressionBuilderContext.cs
- Typography.cs
- CommandBinding.cs
- RoleGroupCollection.cs
- DataKeyCollection.cs
- HttpValueCollection.cs
- _LocalDataStoreMgr.cs
- UserCancellationException.cs
- GPRECTF.cs
- followingquery.cs
- WindowShowOrOpenTracker.cs
- SecurityCriticalDataForSet.cs
- recordstate.cs
- XmlRawWriterWrapper.cs
- BuilderElements.cs
- PointCollection.cs
- SByteConverter.cs
- UnsafeNativeMethods.cs
- HotSpotCollection.cs
- SqlVersion.cs
- State.cs
- DynamicQueryableWrapper.cs