Code:
/ DotNET / DotNET / 8.0 / untmp / whidbey / REDBITS / ndp / fx / src / WinForms / Managed / System / WinForms / AutoCompleteStringCollection.cs / 1 / AutoCompleteStringCollection.cs
//------------------------------------------------------------------------------ //// Copyright (c) Microsoft Corporation. All rights reserved. // //----------------------------------------------------------------------------- namespace System.Windows.Forms { using System.Diagnostics; using System.Diagnostics.CodeAnalysis; using System.Collections; using System.Security.Permissions; using System.ComponentModel; ////// /// public class AutoCompleteStringCollection : IList { CollectionChangeEventHandler onCollectionChanged; private ArrayList data = new ArrayList(); public AutoCompleteStringCollection() { } ///Represents a collection of strings. ////// /// public string this[int index] { get { return ((string)data[index]); } set { OnCollectionChanged(new CollectionChangeEventArgs(CollectionChangeAction.Remove, data[index])); data[index] = value; OnCollectionChanged(new CollectionChangeEventArgs(CollectionChangeAction.Add, value)); } } ///Represents the entry at the specified index of the ///. /// /// public int Count { get { return data.Count; } } ///Gets the number of strings in the /// ///. bool IList.IsReadOnly { get { return false; } } /// bool IList.IsFixedSize { get { return false; } } /// /// /// public event CollectionChangeEventHandler CollectionChanged { add { this.onCollectionChanged += value; } remove { this.onCollectionChanged -= value; } } ///[To be supplied.] ////// /// protected void OnCollectionChanged(CollectionChangeEventArgs e) { if (this.onCollectionChanged != null) { this.onCollectionChanged(this, e); } } ///[To be supplied.] ////// /// public int Add(string value) { int index = data.Add(value); OnCollectionChanged(new CollectionChangeEventArgs(CollectionChangeAction.Add, value)); return index; } ///Adds a string with the specified value to the /// ///. /// /// public void AddRange(string[] value) { if (value == null) { throw new ArgumentNullException("value"); } data.AddRange(value); OnCollectionChanged(new CollectionChangeEventArgs(CollectionChangeAction.Refresh, null)); } ///Copies the elements of a string array to the end of the ///. /// /// public void Clear() { data.Clear(); OnCollectionChanged(new CollectionChangeEventArgs(CollectionChangeAction.Refresh, null)); } ///Removes all the strings from the /// ///. /// /// public bool Contains(string value) { return data.Contains(value); } ///Gets a value indicating whether the /// ///contains a string with the specified /// value. /// /// public void CopyTo(string[] array, int index) { data.CopyTo(array, index); } ///Copies the ///values to a one-dimensional instance at the /// specified index. /// /// public int IndexOf(string value) { return data.IndexOf(value); } ///Returns the index of the first occurrence of a string in /// the ///. /// /// public void Insert(int index, string value) { data.Insert(index, value); OnCollectionChanged(new CollectionChangeEventArgs(CollectionChangeAction.Add, value)); } ///Inserts a string into the ///at the specified /// index. /// /// public bool IsReadOnly { get { return false; } } ///Gets a value indicating whether the ///is read-only. /// /// public bool IsSynchronized { get { return false; } } ///Gets a value indicating whether access to the /// ////// is synchronized (thread-safe). /// /// public void Remove(string value) { data.Remove(value); OnCollectionChanged(new CollectionChangeEventArgs(CollectionChangeAction.Remove, value)); } ///Removes a specific string from the /// ///. /// /// public void RemoveAt(int index) { string value = (string)data[index]; data.RemoveAt(index); OnCollectionChanged(new CollectionChangeEventArgs(CollectionChangeAction.Remove, value)); } ///Removes the string at the specified index of the ///. /// /// public object SyncRoot { [HostProtection(Synchronization=true)] [SuppressMessage("Microsoft.Security", "CA2123:OverrideLinkDemandsShouldBeIdenticalToBase")] get { return this; } } ///Gets an object that can be used to synchronize access to the ///. object IList.this[int index] { get { return this[index]; } set { this[index] = (string)value; } } /// int IList.Add(object value) { return Add((string)value); } /// bool IList.Contains(object value) { return Contains((string) value); } /// int IList.IndexOf(object value) { return IndexOf((string)value); } /// void IList.Insert(int index, object value) { Insert(index, (string)value); } /// void IList.Remove(object value) { Remove((string)value); } /// void ICollection.CopyTo(Array array, int index) { data.CopyTo(array, index); } /// public IEnumerator GetEnumerator() { return data.GetEnumerator(); } } } // 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
- ToolStripPanelRenderEventArgs.cs
- StrokeDescriptor.cs
- DbReferenceCollection.cs
- ConstNode.cs
- SolidBrush.cs
- ConfigurationConverterBase.cs
- BuildProvidersCompiler.cs
- SqlMethodTransformer.cs
- PathFigureCollection.cs
- DataGridViewTopRowAccessibleObject.cs
- DrawingContext.cs
- RevocationPoint.cs
- WindowAutomationPeer.cs
- SafeFileMappingHandle.cs
- CommandField.cs
- Application.cs
- PropertyGroupDescription.cs
- StatusBarPanelClickEvent.cs
- SharedPersonalizationStateInfo.cs
- StreamSecurityUpgradeAcceptorAsyncResult.cs
- ToolStripPanelRow.cs
- XmlNamespaceDeclarationsAttribute.cs
- SendKeys.cs
- MultiSelector.cs
- TraceContextEventArgs.cs
- ModelServiceImpl.cs
- EdmItemCollection.cs
- XPathScanner.cs
- BitmapData.cs
- TreeNodeEventArgs.cs
- InternalDuplexBindingElement.cs
- OpenFileDialog.cs
- VScrollBar.cs
- DataGridViewTextBoxColumn.cs
- MembershipSection.cs
- WebSysDisplayNameAttribute.cs
- entityreference_tresulttype.cs
- SocketPermission.cs
- HttpProfileBase.cs
- Geometry.cs
- FreezableCollection.cs
- PropertyPushdownHelper.cs
- TrackingProfile.cs
- DescendantOverDescendantQuery.cs
- DBConnection.cs
- CompressEmulationStream.cs
- DiscreteKeyFrames.cs
- XPathAxisIterator.cs
- SqlProviderManifest.cs
- TabPanel.cs
- BookmarkScope.cs
- PeerSecurityManager.cs
- parserscommon.cs
- UnitySerializationHolder.cs
- TaiwanCalendar.cs
- FormViewDeletedEventArgs.cs
- TextDecorations.cs
- ContentDefinition.cs
- RequestTimeoutManager.cs
- GeneralTransformGroup.cs
- FixedPage.cs
- TrailingSpaceComparer.cs
- SqlTypeConverter.cs
- SizeAnimationUsingKeyFrames.cs
- DbConnectionPoolGroup.cs
- TemplatePropertyEntry.cs
- ScriptingProfileServiceSection.cs
- RuntimeWrappedException.cs
- ZoneMembershipCondition.cs
- OpenTypeLayoutCache.cs
- GenericTypeParameterConverter.cs
- ParameterSubsegment.cs
- CodePageUtils.cs
- OleDbMetaDataFactory.cs
- Menu.cs
- AsnEncodedData.cs
- IndexedWhereQueryOperator.cs
- HostingPreferredMapPath.cs
- RowTypeElement.cs
- BitmapFrame.cs
- SafeRegistryKey.cs
- PreloadedPackages.cs
- ResourceBinder.cs
- IsolatedStorageFilePermission.cs
- AssemblyInfo.cs
- WebPartDisplayMode.cs
- Dynamic.cs
- TemplatedAdorner.cs
- HtmlButton.cs
- PageAsyncTask.cs
- RadioButtonFlatAdapter.cs
- ImmutableAssemblyCacheEntry.cs
- ListViewDeleteEventArgs.cs
- _DigestClient.cs
- EdgeModeValidation.cs
- Oid.cs
- EditCommandColumn.cs
- HttpChannelBindingToken.cs
- DateTimeValueSerializerContext.cs
- cookiecollection.cs