Code:
/ FX-1434 / FX-1434 / 1.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
- SByteConverter.cs
- FixedSOMSemanticBox.cs
- AppDomainFactory.cs
- SystemFonts.cs
- WebPartZoneCollection.cs
- TTSVoice.cs
- PropertyRef.cs
- Highlights.cs
- ObjectCloneHelper.cs
- Message.cs
- TimeSpanHelper.cs
- SafeEventLogWriteHandle.cs
- ViewStateException.cs
- ChangeTracker.cs
- PasswordBoxAutomationPeer.cs
- DataServiceQueryOfT.cs
- GridViewCommandEventArgs.cs
- ASCIIEncoding.cs
- ArrayMergeHelper.cs
- SqlFacetAttribute.cs
- CommunicationObject.cs
- NotSupportedException.cs
- CalculatedColumn.cs
- ThrowOnMultipleAssignment.cs
- EntityCollectionChangedParams.cs
- DbInsertCommandTree.cs
- IntSumAggregationOperator.cs
- NavigationProperty.cs
- SymLanguageType.cs
- XmlnsPrefixAttribute.cs
- TextLineResult.cs
- XmlHierarchyData.cs
- ConnectionOrientedTransportManager.cs
- PolygonHotSpot.cs
- CachedTypeface.cs
- TrustLevel.cs
- CheckedListBox.cs
- ProfileEventArgs.cs
- Point3DCollectionConverter.cs
- PostBackTrigger.cs
- XmlBinaryReader.cs
- SamlAssertion.cs
- BrushMappingModeValidation.cs
- MatrixCamera.cs
- TypeExtensionConverter.cs
- FamilyTypefaceCollection.cs
- BindingBase.cs
- TextBoxRenderer.cs
- DocumentXmlWriter.cs
- XsltArgumentList.cs
- PublisherIdentityPermission.cs
- ConfigXmlReader.cs
- XPathNodeList.cs
- DbSetClause.cs
- ConfigXmlCDataSection.cs
- BufferedGraphics.cs
- ClientBuildManagerCallback.cs
- PlainXmlDeserializer.cs
- StreamUpdate.cs
- LoginAutoFormat.cs
- CustomPopupPlacement.cs
- HttpListener.cs
- SchemaNames.cs
- DataServiceStreamProviderWrapper.cs
- ArraySubsetEnumerator.cs
- ConfigurationStrings.cs
- ReadOnlyCollectionBase.cs
- ServiceActivationException.cs
- SecurityContext.cs
- BookmarkUndoUnit.cs
- Annotation.cs
- Number.cs
- MessageQueue.cs
- HtmlInputSubmit.cs
- AppDomainFactory.cs
- KeyEvent.cs
- RequestBringIntoViewEventArgs.cs
- Cell.cs
- MessageEnumerator.cs
- ListSourceHelper.cs
- TypeViewSchema.cs
- WmlObjectListAdapter.cs
- InvalidCastException.cs
- GridViewColumnCollection.cs
- ReadOnlyDictionary.cs
- GenericEnumerator.cs
- AsymmetricSignatureFormatter.cs
- SettingsSavedEventArgs.cs
- TemplatedWizardStep.cs
- elementinformation.cs
- UriParserTemplates.cs
- ProtocolsSection.cs
- sitestring.cs
- CollectionType.cs
- FormCollection.cs
- DPCustomTypeDescriptor.cs
- TextBox.cs
- RelationshipNavigation.cs
- DataGridItemEventArgs.cs
- ZipIOLocalFileHeader.cs