Code:
/ 4.0 / 4.0 / DEVDIV_TFS / Dev10 / Releases / RTMRel / ndp / cdf / src / NetFx40 / Tools / System.Activities.Presentation / System / Activities / Presentation / Toolbox / ToolboxCategoryItems.cs / 1305376 / ToolboxCategoryItems.cs
//------------------------------------------------------------ // Copyright (c) Microsoft Corporation. All rights reserved. //----------------------------------------------------------- namespace System.Activities.Presentation.Toolbox { using System.Collections; using System.Collections.Generic; using System.Collections.ObjectModel; using System.Collections.Specialized; using System.Runtime; using System.Diagnostics.CodeAnalysis; //This class is responsible for storing information about tools //associated with given category item. The public interface is ICollection, the IList implementation is required for XAML support. [SuppressMessage(FxCop.Category.Design, "CA1039:ListsAreStronglyTyped", Justification = "The nongeneric IList implementation is required for XAML support. It is implmented explicitly.")] [SuppressMessage(FxCop.Category.Naming, "CA1710:IdentifiersShouldHaveCorrectSuffix", Justification = "The collection suffix 'Items' suits better.")] public sealed class ToolboxCategoryItems : ICollection, IList { ObservableCollection categories; public ToolboxCategoryItems() : this(null) { } internal ToolboxCategoryItems(NotifyCollectionChangedEventHandler listener) { this.categories = new ObservableCollection (); if (null != listener) { this.categories.CollectionChanged += listener; } } public ToolboxCategory this[int index] { get { return this.categories[index]; } } #region ICollection Members public void Add(ToolboxCategory item) { if (null == item) { throw FxTrace.Exception.ArgumentNull("item"); } this.categories.Add(item); } public void Clear() { this.categories.Clear(); } public bool Contains(ToolboxCategory item) { if (null == item) { throw FxTrace.Exception.ArgumentNull("item"); } return this.categories.Contains(item); } public void CopyTo(ToolboxCategory[] array, int arrayIndex) { if (null == array) { throw FxTrace.Exception.ArgumentNull("array"); } this.categories.CopyTo(array, arrayIndex); } public int Count { get { return this.categories.Count; } } public bool IsReadOnly { get { return ((ICollection )this.categories).IsReadOnly; } } public bool Remove(ToolboxCategory item) { if (null == item) { throw FxTrace.Exception.ArgumentNull("item"); } return this.categories.Remove(item); } #endregion #region IEnumerable Members public IEnumerator GetEnumerator() { return this.categories.GetEnumerator(); } #endregion #region IEnumerable Members IEnumerator IEnumerable.GetEnumerator() { return this.categories.GetEnumerator(); } #endregion #region IList Members int IList.Add(object value) { this.Add((ToolboxCategory)value); return this.categories.IndexOf((ToolboxCategory)value); } void IList.Clear() { this.Clear(); } bool IList.Contains(object value) { return this.Contains((ToolboxCategory)value); } int IList.IndexOf(object value) { return this.categories.IndexOf((ToolboxCategory)value); } void IList.Insert(int index, object value) { if (null == value) { throw FxTrace.Exception.ArgumentNull("value"); } this.categories.Insert(index, (ToolboxCategory)value); } bool IList.IsFixedSize { get { return ((IList)this.categories).IsFixedSize; } } bool IList.IsReadOnly { get { return ((IList)this.categories).IsReadOnly; } } void IList.Remove(object value) { this.Remove((ToolboxCategory)value); } void IList.RemoveAt(int index) { this.categories.RemoveAt(index); } object IList.this[int index] { get { return (this)[index]; } set { if (null == value) { throw FxTrace.Exception.ArgumentNull("value"); } this.categories[index] = (ToolboxCategory)value; } } #endregion #region ICollection Members void ICollection.CopyTo(Array array, int index) { if (null == array) { throw FxTrace.Exception.ArgumentNull("array"); } ((ICollection)this.categories).CopyTo(array, index); } int ICollection.Count { get { return this.Count; } } bool ICollection.IsSynchronized { get { return ((ICollection)this.categories).IsSynchronized; } } object ICollection.SyncRoot { get { return ((ICollection)this.categories).SyncRoot; } } #endregion } } // File provided for Reference Use Only by Microsoft Corporation (c) 2007. //------------------------------------------------------------ // Copyright (c) Microsoft Corporation. All rights reserved. //----------------------------------------------------------- namespace System.Activities.Presentation.Toolbox { using System.Collections; using System.Collections.Generic; using System.Collections.ObjectModel; using System.Collections.Specialized; using System.Runtime; using System.Diagnostics.CodeAnalysis; //This class is responsible for storing information about tools //associated with given category item. The public interface is ICollection, the IList implementation is required for XAML support. [SuppressMessage(FxCop.Category.Design, "CA1039:ListsAreStronglyTyped", Justification = "The nongeneric IList implementation is required for XAML support. It is implmented explicitly.")] [SuppressMessage(FxCop.Category.Naming, "CA1710:IdentifiersShouldHaveCorrectSuffix", Justification = "The collection suffix 'Items' suits better.")] public sealed class ToolboxCategoryItems : ICollection , IList { ObservableCollection categories; public ToolboxCategoryItems() : this(null) { } internal ToolboxCategoryItems(NotifyCollectionChangedEventHandler listener) { this.categories = new ObservableCollection (); if (null != listener) { this.categories.CollectionChanged += listener; } } public ToolboxCategory this[int index] { get { return this.categories[index]; } } #region ICollection Members public void Add(ToolboxCategory item) { if (null == item) { throw FxTrace.Exception.ArgumentNull("item"); } this.categories.Add(item); } public void Clear() { this.categories.Clear(); } public bool Contains(ToolboxCategory item) { if (null == item) { throw FxTrace.Exception.ArgumentNull("item"); } return this.categories.Contains(item); } public void CopyTo(ToolboxCategory[] array, int arrayIndex) { if (null == array) { throw FxTrace.Exception.ArgumentNull("array"); } this.categories.CopyTo(array, arrayIndex); } public int Count { get { return this.categories.Count; } } public bool IsReadOnly { get { return ((ICollection )this.categories).IsReadOnly; } } public bool Remove(ToolboxCategory item) { if (null == item) { throw FxTrace.Exception.ArgumentNull("item"); } return this.categories.Remove(item); } #endregion #region IEnumerable Members public IEnumerator GetEnumerator() { return this.categories.GetEnumerator(); } #endregion #region IEnumerable Members IEnumerator IEnumerable.GetEnumerator() { return this.categories.GetEnumerator(); } #endregion #region IList Members int IList.Add(object value) { this.Add((ToolboxCategory)value); return this.categories.IndexOf((ToolboxCategory)value); } void IList.Clear() { this.Clear(); } bool IList.Contains(object value) { return this.Contains((ToolboxCategory)value); } int IList.IndexOf(object value) { return this.categories.IndexOf((ToolboxCategory)value); } void IList.Insert(int index, object value) { if (null == value) { throw FxTrace.Exception.ArgumentNull("value"); } this.categories.Insert(index, (ToolboxCategory)value); } bool IList.IsFixedSize { get { return ((IList)this.categories).IsFixedSize; } } bool IList.IsReadOnly { get { return ((IList)this.categories).IsReadOnly; } } void IList.Remove(object value) { this.Remove((ToolboxCategory)value); } void IList.RemoveAt(int index) { this.categories.RemoveAt(index); } object IList.this[int index] { get { return (this)[index]; } set { if (null == value) { throw FxTrace.Exception.ArgumentNull("value"); } this.categories[index] = (ToolboxCategory)value; } } #endregion #region ICollection Members void ICollection.CopyTo(Array array, int index) { if (null == array) { throw FxTrace.Exception.ArgumentNull("array"); } ((ICollection)this.categories).CopyTo(array, index); } int ICollection.Count { get { return this.Count; } } bool ICollection.IsSynchronized { get { return ((ICollection)this.categories).IsSynchronized; } } object ICollection.SyncRoot { get { return ((ICollection)this.categories).SyncRoot; } } #endregion } } // File provided for Reference Use Only by Microsoft Corporation (c) 2007.
Link Menu
This book is available now!
Buy at Amazon US or
Buy at Amazon UK
- TextComposition.cs
- ReflectionHelper.cs
- CacheHelper.cs
- VisualTreeUtils.cs
- TextLineResult.cs
- LineGeometry.cs
- Win32PrintDialog.cs
- _ConnectOverlappedAsyncResult.cs
- IdentityReference.cs
- DeploymentSectionCache.cs
- VisualStyleElement.cs
- NavigationPropertyAccessor.cs
- NTAccount.cs
- SqlNodeAnnotation.cs
- DisplayToken.cs
- PathSegmentCollection.cs
- Regex.cs
- DataRelationPropertyDescriptor.cs
- JoinSymbol.cs
- AsyncCompletedEventArgs.cs
- RuleConditionDialog.cs
- ParameterCollection.cs
- UIElement3DAutomationPeer.cs
- TableRow.cs
- DataServiceProcessingPipelineEventArgs.cs
- DataException.cs
- ProjectionCamera.cs
- DbProviderManifest.cs
- List.cs
- XmlDataLoader.cs
- XmlComment.cs
- XmlWellformedWriter.cs
- BuildProvider.cs
- BuildProviderAppliesToAttribute.cs
- SecureStringHasher.cs
- NativeCompoundFileAPIs.cs
- ProjectionCamera.cs
- NamespaceEmitter.cs
- WindowsComboBox.cs
- ComponentDispatcherThread.cs
- EntryPointNotFoundException.cs
- InfiniteIntConverter.cs
- AuthenticatedStream.cs
- DataGridViewRowPrePaintEventArgs.cs
- GlobalizationSection.cs
- XsdValidatingReader.cs
- TabItemAutomationPeer.cs
- ConnectionConsumerAttribute.cs
- BehaviorDragDropEventArgs.cs
- SqlDataAdapter.cs
- ValidatorCompatibilityHelper.cs
- ColumnPropertiesGroup.cs
- Decorator.cs
- smtppermission.cs
- EtwProvider.cs
- PeerFlooder.cs
- SymbolMethod.cs
- BaseServiceProvider.cs
- WindowAutomationPeer.cs
- WebUtil.cs
- Binding.cs
- _SSPIWrapper.cs
- MembershipUser.cs
- Parsers.cs
- ScaleTransform3D.cs
- DataGridViewRowConverter.cs
- Error.cs
- DataGridItem.cs
- StateItem.cs
- ScaleTransform.cs
- TableLayoutSettingsTypeConverter.cs
- Hex.cs
- CriticalFinalizerObject.cs
- LinearQuaternionKeyFrame.cs
- MemberHolder.cs
- MetadataItem.cs
- XmlObjectSerializerContext.cs
- AutomationEventArgs.cs
- HuffmanTree.cs
- Setter.cs
- Model3DGroup.cs
- PenCursorManager.cs
- WebPartRestoreVerb.cs
- ProxyElement.cs
- HttpVersion.cs
- isolationinterop.cs
- EndpointIdentityConverter.cs
- ScriptDescriptor.cs
- XPathNavigator.cs
- HttpListenerException.cs
- Merger.cs
- NewArrayExpression.cs
- XmlSchemaComplexContent.cs
- MemberAssignmentAnalysis.cs
- Certificate.cs
- ZipIOBlockManager.cs
- SQLInt32.cs
- ObjectParameterCollection.cs
- PropertyToken.cs
- RenderingBiasValidation.cs