Code:
/ Dotnetfx_Vista_SP2 / Dotnetfx_Vista_SP2 / 8.0.50727.4016 / DEVDIV / depot / DevDiv / releases / Orcas / QFE / wpf / src / Framework / System / Windows / Controls / Primitives / MultiSelector.cs / 1 / MultiSelector.cs
//---------------------------------------------------------------------------- // // Copyright (C) Microsoft Corporation. All rights reserved. // //--------------------------------------------------------------------------- using System; using System.ComponentModel; using System.Collections; using System.Collections.ObjectModel; namespace System.Windows.Controls.Primitives { ////// Extends the Selector class by adding a multi selection support. /// public abstract class MultiSelector : Selector { ////// Returns whether or not multiple items can be selected /// protected bool CanSelectMultipleItems { get { return base.CanSelectMultiple; } set { base.CanSelectMultiple = value; } } ////// Returns the collection of currently Selected Items. /// Note, this is not the set of items that are pending selection. /// Exceptions: /// While IsUpdatingSelectedItems, using the indexer, Insert, and RemoveAt will throw InvalidOperationExceptions. /// If CanSelectMultiple is false then Adding one item to SelectedItems is valid but adding items after that is invalid and will result in an InvalidOperationException. /// [Bindable(true), Category("Appearance"), DesignerSerializationVisibility(DesignerSerializationVisibility.Hidden)] public IList SelectedItems { get { return SelectedItemsImpl; } } #region BulkSelection ////// Starts a new selection transaction, setting IsUpdatingSelectedItems to true. /// Exceptions: InvalidOperationException if IsUpdatingSelectedItems is true. /// protected void BeginUpdateSelectedItems() { ((SelectedItemCollection)SelectedItems).BeginUpdateSelectedItems(); } ////// Commits a selection transaction, populating or removing items from the SelectedItems collection and resets IsUpdatingSelectedItems to false. /// Exceptions: InvalidOperationException if IsUpdatingSelectedItems is false /// protected void EndUpdateSelectedItems() { ((SelectedItemCollection)SelectedItems).EndUpdateSelectedItems(); } ////// Returns true if SelectedItems is being updated using the deferred update behavior. /// Otherwise, it is false and updating SelectedItems is immediate. /// Calling BeginUpdateSelectedItems will set this value to become true. /// Calling EndUpdateSelectedItems will cause the deferred selections to be submitted and this value to become false. /// protected bool IsUpdatingSelectedItems { get { return ((SelectedItemCollection)SelectedItems).IsUpdatingSelectedItems; } } ////// Select all the items /// Exceptions: InvalidOperationExcpetion if CanSelectMultipleItems is false /// public void SelectAll() { if (CanSelectMultipleItems) { SelectAllImpl(); } else { throw new NotSupportedException(SR.Get(SRID.MultiSelectorSelectAll)); } } ////// Clears all of the selected items. /// public void UnselectAll() { UnselectAllImpl(); } #endregion BulkSelection } } // File provided for Reference Use Only by Microsoft Corporation (c) 2007. // Copyright (c) Microsoft Corporation. All rights reserved. //---------------------------------------------------------------------------- // // Copyright (C) Microsoft Corporation. All rights reserved. // //--------------------------------------------------------------------------- using System; using System.ComponentModel; using System.Collections; using System.Collections.ObjectModel; namespace System.Windows.Controls.Primitives { ////// Extends the Selector class by adding a multi selection support. /// public abstract class MultiSelector : Selector { ////// Returns whether or not multiple items can be selected /// protected bool CanSelectMultipleItems { get { return base.CanSelectMultiple; } set { base.CanSelectMultiple = value; } } ////// Returns the collection of currently Selected Items. /// Note, this is not the set of items that are pending selection. /// Exceptions: /// While IsUpdatingSelectedItems, using the indexer, Insert, and RemoveAt will throw InvalidOperationExceptions. /// If CanSelectMultiple is false then Adding one item to SelectedItems is valid but adding items after that is invalid and will result in an InvalidOperationException. /// [Bindable(true), Category("Appearance"), DesignerSerializationVisibility(DesignerSerializationVisibility.Hidden)] public IList SelectedItems { get { return SelectedItemsImpl; } } #region BulkSelection ////// Starts a new selection transaction, setting IsUpdatingSelectedItems to true. /// Exceptions: InvalidOperationException if IsUpdatingSelectedItems is true. /// protected void BeginUpdateSelectedItems() { ((SelectedItemCollection)SelectedItems).BeginUpdateSelectedItems(); } ////// Commits a selection transaction, populating or removing items from the SelectedItems collection and resets IsUpdatingSelectedItems to false. /// Exceptions: InvalidOperationException if IsUpdatingSelectedItems is false /// protected void EndUpdateSelectedItems() { ((SelectedItemCollection)SelectedItems).EndUpdateSelectedItems(); } ////// Returns true if SelectedItems is being updated using the deferred update behavior. /// Otherwise, it is false and updating SelectedItems is immediate. /// Calling BeginUpdateSelectedItems will set this value to become true. /// Calling EndUpdateSelectedItems will cause the deferred selections to be submitted and this value to become false. /// protected bool IsUpdatingSelectedItems { get { return ((SelectedItemCollection)SelectedItems).IsUpdatingSelectedItems; } } ////// Select all the items /// Exceptions: InvalidOperationExcpetion if CanSelectMultipleItems is false /// public void SelectAll() { if (CanSelectMultipleItems) { SelectAllImpl(); } else { throw new NotSupportedException(SR.Get(SRID.MultiSelectorSelectAll)); } } ////// Clears all of the selected items. /// public void UnselectAll() { UnselectAllImpl(); } #endregion BulkSelection } } // 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
- ApplicationCommands.cs
- FontDifferentiator.cs
- ValueSerializerAttribute.cs
- ToolStrip.cs
- FieldToken.cs
- ObjectStateEntryDbDataRecord.cs
- LinqDataSourceHelper.cs
- HwndAppCommandInputProvider.cs
- XXXOnTypeBuilderInstantiation.cs
- FrameworkPropertyMetadata.cs
- ToolStripInSituService.cs
- EntityDataSourceColumn.cs
- Utils.cs
- Int32Storage.cs
- Asn1IntegerConverter.cs
- LayoutManager.cs
- DeviceSpecificChoice.cs
- DefaultObjectMappingItemCollection.cs
- TrustLevel.cs
- DesignerDataTableBase.cs
- WindowCollection.cs
- EvidenceTypeDescriptor.cs
- LiteralControl.cs
- HtmlInputHidden.cs
- SendReply.cs
- UniqueTransportManagerRegistration.cs
- DataGridViewRowCollection.cs
- ToolStripControlHost.cs
- AttachmentService.cs
- EraserBehavior.cs
- DriveInfo.cs
- TextBox.cs
- DataGridColumnHeaderAutomationPeer.cs
- CultureSpecificStringDictionary.cs
- Content.cs
- HttpWriter.cs
- ListViewDeletedEventArgs.cs
- Accessible.cs
- ValuePattern.cs
- CustomErrorCollection.cs
- ColorContext.cs
- Point3D.cs
- SQLSingleStorage.cs
- ThicknessKeyFrameCollection.cs
- NullRuntimeConfig.cs
- JoinElimination.cs
- TriggerBase.cs
- BindingRestrictions.cs
- StylusButton.cs
- WebPartMenu.cs
- IdentityModelStringsVersion1.cs
- StylusPointPropertyInfoDefaults.cs
- DataTableReaderListener.cs
- Transform3DGroup.cs
- XmlAnyAttributeAttribute.cs
- SqlClientWrapperSmiStream.cs
- SinglePageViewer.cs
- ReliableInputConnection.cs
- RegionInfo.cs
- UnsupportedPolicyOptionsException.cs
- LocatorManager.cs
- XmlSigningNodeWriter.cs
- DeclaredTypeValidator.cs
- EdmConstants.cs
- EncryptedPackage.cs
- LinkClickEvent.cs
- DataPager.cs
- BackgroundWorker.cs
- AutomationFocusChangedEventArgs.cs
- PrivilegedConfigurationManager.cs
- PeerObject.cs
- XmlIlVisitor.cs
- _PooledStream.cs
- InternalException.cs
- DropSource.cs
- SingleQueryOperator.cs
- XmlSchemaValidator.cs
- CallContext.cs
- FormViewRow.cs
- _NetworkingPerfCounters.cs
- Symbol.cs
- ValueSerializerAttribute.cs
- XmlBinaryReader.cs
- TreeBuilderXamlTranslator.cs
- ContainsSearchOperator.cs
- XmlILTrace.cs
- CacheSection.cs
- MediaElementAutomationPeer.cs
- UnauthorizedWebPart.cs
- PageParser.cs
- TreeNodeClickEventArgs.cs
- RichTextBox.cs
- SystemIPGlobalStatistics.cs
- BaseDataList.cs
- DesignerObject.cs
- RadioButtonBaseAdapter.cs
- ByteAnimation.cs
- Membership.cs
- Hash.cs
- ReliableInputConnection.cs