Code:
/ 4.0 / 4.0 / 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. 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
- PropertyPathWorker.cs
- DbParameterCollectionHelper.cs
- Peer.cs
- Cursor.cs
- XmlUtilWriter.cs
- OdbcStatementHandle.cs
- ClientSettingsStore.cs
- MasterPageBuildProvider.cs
- VsPropertyGrid.cs
- XmlDownloadManager.cs
- ActivityContext.cs
- DecimalStorage.cs
- TextBoxBase.cs
- ReadOnlyNameValueCollection.cs
- VectorKeyFrameCollection.cs
- Stack.cs
- ListenerConstants.cs
- ObjectRef.cs
- MessageDecoder.cs
- NTAccount.cs
- FtpRequestCacheValidator.cs
- BindableTemplateBuilder.cs
- SmiContext.cs
- XPathNodeList.cs
- DataBindingExpressionBuilder.cs
- WebBrowserSiteBase.cs
- SelectionEditor.cs
- ServerIdentity.cs
- ModelTreeEnumerator.cs
- VisualStyleRenderer.cs
- XPathBinder.cs
- IPEndPoint.cs
- ExtensionWindowResizeGrip.cs
- HttpModule.cs
- ExpressionNormalizer.cs
- FixedSOMPage.cs
- Knowncolors.cs
- BackgroundWorker.cs
- LicenseManager.cs
- CounterCreationDataCollection.cs
- Size.cs
- TranslateTransform.cs
- FilterQuery.cs
- AuthenticationSection.cs
- ReferentialConstraint.cs
- RewritingProcessor.cs
- ConnectionManagementElement.cs
- OciHandle.cs
- TrackingAnnotationCollection.cs
- WebHttpBindingCollectionElement.cs
- SimpleFieldTemplateUserControl.cs
- BindingGroup.cs
- TableRowsCollectionEditor.cs
- StatusBarPanelClickEvent.cs
- AuthenticatingEventArgs.cs
- LogEntrySerialization.cs
- VerticalAlignConverter.cs
- ListViewDeleteEventArgs.cs
- OptimalBreakSession.cs
- XmlSchemaObjectCollection.cs
- TouchesCapturedWithinProperty.cs
- input.cs
- AbstractExpressions.cs
- RIPEMD160.cs
- Variable.cs
- FixedSOMTable.cs
- ADRoleFactoryConfiguration.cs
- safemediahandle.cs
- TemplateXamlParser.cs
- ListComponentEditor.cs
- ExitEventArgs.cs
- CurrencyWrapper.cs
- X500Name.cs
- DataGridPageChangedEventArgs.cs
- TreeNodeBinding.cs
- SrgsItemList.cs
- DataFormats.cs
- NavigateEvent.cs
- RectAnimation.cs
- HexParser.cs
- BeginStoryboard.cs
- SqlXmlStorage.cs
- WebPartMovingEventArgs.cs
- AdornerPresentationContext.cs
- ServicePointManagerElement.cs
- GridErrorDlg.cs
- AutomationPropertyInfo.cs
- recordstatefactory.cs
- TemplateComponentConnector.cs
- TypedReference.cs
- StatusBarPanel.cs
- SimpleWebHandlerParser.cs
- ComAdminWrapper.cs
- AsymmetricCryptoHandle.cs
- EtwTrace.cs
- CompositeControl.cs
- BinaryUtilClasses.cs
- ChtmlCommandAdapter.cs
- ParameterModifier.cs
- ReliableOutputSessionChannel.cs