Code:
/ 4.0 / 4.0 / DEVDIV_TFS / Dev10 / Releases / RTMRel / wpf / src / Framework / System / Windows / SetterBaseCollection.cs / 1305600 / SetterBaseCollection.cs
/****************************************************************************\ * * File: SetterBaseCollection.cs * * A collection of SetterBase-derived classes. See use in Style.cs and other * places. * * Copyright (C) by Microsoft Corporation. All rights reserved. * \***************************************************************************/ using System.Collections.ObjectModel; // Collectionusing System.Diagnostics; // Debug.Assert using System.Windows.Data; // Binding knowledge using System.Windows.Media; // Visual knowledge using System.Windows.Markup; // MarkupExtension namespace System.Windows { /// /// A collection of SetterBase objects to be used /// in Template and its trigger classes /// public sealed class SetterBaseCollection : Collection{ #region ProtectedMethods /// /// ClearItems override /// protected override void ClearItems() { CheckSealed(); base.ClearItems(); } ////// InsertItem override /// protected override void InsertItem(int index, SetterBase item) { CheckSealed(); SetterBaseValidation(item); base.InsertItem(index, item); } ////// RemoveItem override /// protected override void RemoveItem(int index) { CheckSealed(); base.RemoveItem(index); } ////// SetItem override /// protected override void SetItem(int index, SetterBase item) { CheckSealed(); SetterBaseValidation(item); base.SetItem(index, item); } #endregion ProtectedMethods #region PublicMethods ////// Returns the sealed state of this object. If true, any attempt /// at modifying the state of this object will trigger an exception. /// public bool IsSealed { get { return _sealed; } } #endregion PublicMethods #region InternalMethods internal void Seal() { _sealed = true; // Seal all the setters for (int i=0; iusing System.Diagnostics; // Debug.Assert using System.Windows.Data; // Binding knowledge using System.Windows.Media; // Visual knowledge using System.Windows.Markup; // MarkupExtension namespace System.Windows { /// /// A collection of SetterBase objects to be used /// in Template and its trigger classes /// public sealed class SetterBaseCollection : Collection{ #region ProtectedMethods /// /// ClearItems override /// protected override void ClearItems() { CheckSealed(); base.ClearItems(); } ////// InsertItem override /// protected override void InsertItem(int index, SetterBase item) { CheckSealed(); SetterBaseValidation(item); base.InsertItem(index, item); } ////// RemoveItem override /// protected override void RemoveItem(int index) { CheckSealed(); base.RemoveItem(index); } ////// SetItem override /// protected override void SetItem(int index, SetterBase item) { CheckSealed(); SetterBaseValidation(item); base.SetItem(index, item); } #endregion ProtectedMethods #region PublicMethods ////// Returns the sealed state of this object. If true, any attempt /// at modifying the state of this object will trigger an exception. /// public bool IsSealed { get { return _sealed; } } #endregion PublicMethods #region InternalMethods internal void Seal() { _sealed = true; // Seal all the setters for (int i=0; i
Link Menu
This book is available now!
Buy at Amazon US or
Buy at Amazon UK
- SafeBitVector32.cs
- HtmlControlPersistable.cs
- StateInitialization.cs
- ParseNumbers.cs
- EventManager.cs
- StylusPointPropertyInfo.cs
- ReflectionTypeLoadException.cs
- Directory.cs
- BinHexDecoder.cs
- DataControlFieldCollection.cs
- DataControlFieldTypeEditor.cs
- ObjectDataSource.cs
- ContentOperations.cs
- SystemWebSectionGroup.cs
- BaseValidator.cs
- InkPresenter.cs
- DotExpr.cs
- CompilationRelaxations.cs
- DuplicateWaitObjectException.cs
- OleStrCAMarshaler.cs
- ColumnReorderedEventArgs.cs
- _ConnectStream.cs
- AutoResetEvent.cs
- HttpRuntimeSection.cs
- ScrollBar.cs
- Parallel.cs
- SqlUtils.cs
- MessageLoggingFilterTraceRecord.cs
- TextTreeExtractElementUndoUnit.cs
- EventSource.cs
- RectangleF.cs
- CodeAttachEventStatement.cs
- BooleanAnimationBase.cs
- MetadataPropertyvalue.cs
- SqlExpander.cs
- ExpressionBuilder.cs
- Input.cs
- DetailsViewPagerRow.cs
- PathData.cs
- ContractTypeNameCollection.cs
- BasicCommandTreeVisitor.cs
- SourceElementsCollection.cs
- DomNameTable.cs
- DocumentPageViewAutomationPeer.cs
- SafeProcessHandle.cs
- OpacityConverter.cs
- SpellerInterop.cs
- PerfService.cs
- InstanceLockedException.cs
- CapabilitiesRule.cs
- TraceUtils.cs
- XDRSchema.cs
- MaskedTextProvider.cs
- HttpCapabilitiesBase.cs
- ChangePassword.cs
- HasRunnableWorkflowEvent.cs
- BamlLocalizableResourceKey.cs
- TabControlAutomationPeer.cs
- ToolStripPanelCell.cs
- BatchWriter.cs
- ResourceKey.cs
- ToolboxControl.cs
- SafeLibraryHandle.cs
- TreeBuilderXamlTranslator.cs
- Flattener.cs
- UserValidatedEventArgs.cs
- ScriptingSectionGroup.cs
- ZipIOExtraFieldPaddingElement.cs
- WsiProfilesElement.cs
- Helper.cs
- SqlTypeSystemProvider.cs
- EdmComplexTypeAttribute.cs
- SerializationHelper.cs
- ArgumentNullException.cs
- AbandonedMutexException.cs
- EventMap.cs
- DecoderReplacementFallback.cs
- APCustomTypeDescriptor.cs
- InvokeHandlers.cs
- RtfToXamlLexer.cs
- EditorPart.cs
- TextOptionsInternal.cs
- QueryContinueDragEvent.cs
- Cell.cs
- AssertFilter.cs
- ZipArchive.cs
- TableRow.cs
- DynamicActivityProperty.cs
- ColorTranslator.cs
- ToolBar.cs
- ButtonBaseAutomationPeer.cs
- PeerDuplexChannelListener.cs
- WindowsGrip.cs
- RegexCompilationInfo.cs
- SqlDeflator.cs
- WorkBatch.cs
- DataGridCellAutomationPeer.cs
- IProducerConsumerCollection.cs
- ExceptionHandlersDesigner.cs
- RichTextBox.cs