Code:
/ FXUpdate3074 / FXUpdate3074 / 1.1 / untmp / whidbey / QFE / ndp / fx / src / xsp / System / Web / UI / WebControls / SelectedDatesCollection.cs / 1 / SelectedDatesCollection.cs
//------------------------------------------------------------------------------ //// Copyright (c) Microsoft Corporation. All rights reserved. // //----------------------------------------------------------------------------- namespace System.Web.UI.WebControls { using System; using System.Collections; using System.Security.Permissions; ////// [AspNetHostingPermission(SecurityAction.LinkDemand, Level=AspNetHostingPermissionLevel.Minimal)] public sealed class SelectedDatesCollection : ICollection { private ArrayList dateList; ///Encapsulates the collection of ///within a control. /// public SelectedDatesCollection(ArrayList dateList) { this.dateList = dateList; } ///Initializes a new instance of the ///class /// with the specified date list. /// public int Count { get { return dateList.Count; } } ///Gets the item count of the collection. ////// public DateTime this[int index] { get { return(DateTime) dateList[index]; } } ///Gets a ///referenced by the specified ordinal index value in the collection. /// public void Add(DateTime date) { int index; if (!FindIndex(date.Date, out index)) { dateList.Insert(index, date.Date); } } ///Adds the specified ///to the end of the collection. /// public void Clear() { dateList.Clear(); } ///Removes all ///controls from the collection. /// public bool Contains(DateTime date) { int index; return FindIndex(date.Date, out index); } ///Returns a value indicating whether the collection contains the specified /// date. ////// private bool FindIndex(DateTime date, out int index) { int n = Count; int Min = 0; int Max = n; while (Min < Max) { index = (Min + Max ) / 2; if (date == this[index]) { return true; } if (date < this[index]) { Max = index; } else { Min = index + 1; } } index = Min; return false; } ////// public IEnumerator GetEnumerator() { return dateList.GetEnumerator(); } ///Returns an enumerator of all ///controls within the collection. /// public void CopyTo(Array array, int index) { for (IEnumerator e = this.GetEnumerator(); e.MoveNext();) array.SetValue(e.Current, index++); } ///Copies contents from the collection to a specified ///with a /// specified starting index. /// public Object SyncRoot { get { return this;} } ///Gets the object that can be used to synchronize access to the collection. In /// this case, it is the collection itself. ////// public bool IsReadOnly { get { return false;} } ///Gets a value indicating whether the collection is read-only. ////// public bool IsSynchronized { get { return false;} } ///Gets a value indicating whether access to the collection is synchronized /// (thread-safe). ////// public void Remove(DateTime date) { int index; if (FindIndex(date.Date, out index)) { dateList.RemoveAt(index); } } ///Removes the specified date from the collection. ////// public void SelectRange(DateTime fromDate, DateTime toDate) { dateList.Clear(); if (fromDate <= toDate) { // The while loop below is safe that it is not attempting to add // day beyond the last supported date because toDate can happen // to be the last supported date. dateList.Add(fromDate); DateTime date = fromDate; while (date < toDate) { date = date.AddDays(1); dateList.Add(date); } } } } } // File provided for Reference Use Only by Microsoft Corporation (c) 2007. // Copyright (c) Microsoft Corporation. All rights reserved.Sets the contents of the ///to span /// across the specified date range.
Link Menu
This book is available now!
Buy at Amazon US or
Buy at Amazon UK
- SafeFileMapViewHandle.cs
- DnsElement.cs
- WebPartCollection.cs
- SafeNativeMethodsMilCoreApi.cs
- ResourceReader.cs
- AttachedProperty.cs
- PrintDialog.cs
- TextStore.cs
- XmlMtomReader.cs
- CallContext.cs
- PreservationFileWriter.cs
- RectKeyFrameCollection.cs
- ScalarConstant.cs
- ToolTip.cs
- RepeatBehaviorConverter.cs
- XmlReflectionImporter.cs
- XPathQilFactory.cs
- ProcessThread.cs
- FixedTextPointer.cs
- Registry.cs
- HealthMonitoringSectionHelper.cs
- RpcResponse.cs
- RuntimeEnvironment.cs
- ImageCodecInfoPrivate.cs
- SortDescriptionCollection.cs
- DSGeneratorProblem.cs
- WsatTransactionInfo.cs
- MdiWindowListItemConverter.cs
- EventRoute.cs
- SoapObjectWriter.cs
- Rules.cs
- RegistrySecurity.cs
- BooleanConverter.cs
- QueryServiceConfigHandle.cs
- RadialGradientBrush.cs
- webeventbuffer.cs
- BrushConverter.cs
- Blend.cs
- XmlSchemas.cs
- Subset.cs
- FormViewPagerRow.cs
- XmlSchemaType.cs
- CreateInstanceBinder.cs
- TextBoxBaseDesigner.cs
- NamespaceListProperty.cs
- ErrorRuntimeConfig.cs
- DbConnectionStringCommon.cs
- SetterTriggerConditionValueConverter.cs
- BulletedList.cs
- RsaSecurityToken.cs
- SymDocumentType.cs
- RC2CryptoServiceProvider.cs
- ApplicationDirectoryMembershipCondition.cs
- ConnectionProviderAttribute.cs
- ContentWrapperAttribute.cs
- SerializationInfoEnumerator.cs
- PerfProviderCollection.cs
- SpellerError.cs
- SeekStoryboard.cs
- Condition.cs
- EndGetFileNameFromUserRequest.cs
- SourceFilter.cs
- ReplyChannelBinder.cs
- TypeUnloadedException.cs
- TextRangeBase.cs
- DbConnectionOptions.cs
- CodeGenerator.cs
- TypeBuilderInstantiation.cs
- StrokeCollection2.cs
- Material.cs
- DataGridViewDataConnection.cs
- ListItemCollection.cs
- MoveSizeWinEventHandler.cs
- CrossContextChannel.cs
- ConditionalBranch.cs
- PropertyPathWorker.cs
- CacheHelper.cs
- httpstaticobjectscollection.cs
- DiscoveryInnerClientAdhoc11.cs
- SystemGatewayIPAddressInformation.cs
- Underline.cs
- dataobject.cs
- UInt64.cs
- DrawTreeNodeEventArgs.cs
- MetadataSource.cs
- DataPagerField.cs
- ControlPropertyNameConverter.cs
- PackagingUtilities.cs
- XmlIlGenerator.cs
- CheckBoxStandardAdapter.cs
- XsltQilFactory.cs
- GroupBox.cs
- LoginName.cs
- QilXmlReader.cs
- ObjectDataSource.cs
- EasingKeyFrames.cs
- SmiContextFactory.cs
- ChannelListenerBase.cs
- ControlBindingsCollection.cs
- DesignerSerializerAttribute.cs