Code:
/ 4.0 / 4.0 / DEVDIV_TFS / Dev10 / Releases / RTMRel / ndp / fx / src / xsp / System / Web / UI / WebControls / DropDownList.cs / 1305376 / DropDownList.cs
//------------------------------------------------------------------------------ //// Copyright (c) Microsoft Corporation. All rights reserved. // //----------------------------------------------------------------------------- namespace System.Web.UI.WebControls { using System; using System.Collections; using System.ComponentModel; using System.Collections.Specialized; using System.Drawing; using System.Web; using System.Web.UI; using System.Web.UI.WebControls.Adapters; ////// [ SupportsEventValidation, ValidationProperty("SelectedItem") ] public class DropDownList : ListControl, IPostBackDataHandler { ///Creates a control that allows the user to select a single item from a /// drop-down list. ////// public DropDownList() { } ///Initializes a new instance of the ///class. /// [ Browsable(false) ] public override Color BorderColor { get { return base.BorderColor; } set { base.BorderColor = value; } } ///[To be supplied.] ////// [ Browsable(false) ] public override BorderStyle BorderStyle { get { return base.BorderStyle; } set { base.BorderStyle = value; } } ///[To be supplied.] ////// [ Browsable(false) ] public override Unit BorderWidth { get { return base.BorderWidth; } set { base.BorderWidth = value; } } public override bool SupportsDisabledAttribute { get { return true; } } ///[To be supplied.] ////// [ WebCategory("Behavior"), DefaultValue(0), WebSysDescription(SR.WebControl_SelectedIndex), DesignerSerializationVisibility(DesignerSerializationVisibility.Hidden) ] public override int SelectedIndex { get { int selectedIndex = base.SelectedIndex; if (selectedIndex < 0 && Items.Count > 0) { Items[0].Selected = true; selectedIndex = 0; } return selectedIndex; } set { base.SelectedIndex = value; } } internal override ArrayList SelectedIndicesInternal { get { int sideEffect = SelectedIndex; return base.SelectedIndicesInternal; } } protected override void AddAttributesToRender(HtmlTextWriter writer) { string uniqueID = UniqueID; if (uniqueID != null) { writer.AddAttribute(HtmlTextWriterAttribute.Name, uniqueID); } base.AddAttributesToRender(writer); } protected override ControlCollection CreateControlCollection() { return new EmptyControlCollection(this); } ///Gets or sets the index of the item selected by the user /// from the ////// control. /// /// bool IPostBackDataHandler.LoadPostData(String postDataKey, NameValueCollection postCollection) { return LoadPostData(postDataKey, postCollection); } ///Process posted data for the ///control. /// /// protected virtual bool LoadPostData(String postDataKey, NameValueCollection postCollection) { // When a DropDownList is disabled, then there is no postback data for it. // Since DropDownList doesn't call RegisterRequiresPostBack, this method will // never be called, so we don't need to worry about ignoring empty postback data. string [] selectedItems = postCollection.GetValues(postDataKey); EnsureDataBound(); if (selectedItems != null) { ValidateEvent(postDataKey, selectedItems[0]); int n = Items.FindByValueInternal(selectedItems[0], false); if (SelectedIndex != n) { SetPostDataSelection(n); return true; } } return false; } ///Process posted data for the ///control. /// /// void IPostBackDataHandler.RaisePostDataChangedEvent() { RaisePostDataChangedEvent(); } ///Raises events for the ///control on post back. /// /// protected virtual void RaisePostDataChangedEvent() { if (AutoPostBack && !Page.IsPostBackEventControlRegistered) { // VSWhidbey 204824 Page.AutoPostBackControl = this; if (CausesValidation) { Page.Validate(ValidationGroup); } } OnSelectedIndexChanged(EventArgs.Empty); } protected internal override void VerifyMultiSelect() { throw new HttpException(SR.GetString(SR.Cant_Multiselect, "DropDownList")); } } } // File provided for Reference Use Only by Microsoft Corporation (c) 2007. //------------------------------------------------------------------------------ //Raises events for the ///control on post back. // Copyright (c) Microsoft Corporation. All rights reserved. // //----------------------------------------------------------------------------- namespace System.Web.UI.WebControls { using System; using System.Collections; using System.ComponentModel; using System.Collections.Specialized; using System.Drawing; using System.Web; using System.Web.UI; using System.Web.UI.WebControls.Adapters; ////// [ SupportsEventValidation, ValidationProperty("SelectedItem") ] public class DropDownList : ListControl, IPostBackDataHandler { ///Creates a control that allows the user to select a single item from a /// drop-down list. ////// public DropDownList() { } ///Initializes a new instance of the ///class. /// [ Browsable(false) ] public override Color BorderColor { get { return base.BorderColor; } set { base.BorderColor = value; } } ///[To be supplied.] ////// [ Browsable(false) ] public override BorderStyle BorderStyle { get { return base.BorderStyle; } set { base.BorderStyle = value; } } ///[To be supplied.] ////// [ Browsable(false) ] public override Unit BorderWidth { get { return base.BorderWidth; } set { base.BorderWidth = value; } } public override bool SupportsDisabledAttribute { get { return true; } } ///[To be supplied.] ////// [ WebCategory("Behavior"), DefaultValue(0), WebSysDescription(SR.WebControl_SelectedIndex), DesignerSerializationVisibility(DesignerSerializationVisibility.Hidden) ] public override int SelectedIndex { get { int selectedIndex = base.SelectedIndex; if (selectedIndex < 0 && Items.Count > 0) { Items[0].Selected = true; selectedIndex = 0; } return selectedIndex; } set { base.SelectedIndex = value; } } internal override ArrayList SelectedIndicesInternal { get { int sideEffect = SelectedIndex; return base.SelectedIndicesInternal; } } protected override void AddAttributesToRender(HtmlTextWriter writer) { string uniqueID = UniqueID; if (uniqueID != null) { writer.AddAttribute(HtmlTextWriterAttribute.Name, uniqueID); } base.AddAttributesToRender(writer); } protected override ControlCollection CreateControlCollection() { return new EmptyControlCollection(this); } ///Gets or sets the index of the item selected by the user /// from the ////// control. /// /// bool IPostBackDataHandler.LoadPostData(String postDataKey, NameValueCollection postCollection) { return LoadPostData(postDataKey, postCollection); } ///Process posted data for the ///control. /// /// protected virtual bool LoadPostData(String postDataKey, NameValueCollection postCollection) { // When a DropDownList is disabled, then there is no postback data for it. // Since DropDownList doesn't call RegisterRequiresPostBack, this method will // never be called, so we don't need to worry about ignoring empty postback data. string [] selectedItems = postCollection.GetValues(postDataKey); EnsureDataBound(); if (selectedItems != null) { ValidateEvent(postDataKey, selectedItems[0]); int n = Items.FindByValueInternal(selectedItems[0], false); if (SelectedIndex != n) { SetPostDataSelection(n); return true; } } return false; } ///Process posted data for the ///control. /// /// void IPostBackDataHandler.RaisePostDataChangedEvent() { RaisePostDataChangedEvent(); } ///Raises events for the ///control on post back. /// /// protected virtual void RaisePostDataChangedEvent() { if (AutoPostBack && !Page.IsPostBackEventControlRegistered) { // VSWhidbey 204824 Page.AutoPostBackControl = this; if (CausesValidation) { Page.Validate(ValidationGroup); } } OnSelectedIndexChanged(EventArgs.Empty); } protected internal override void VerifyMultiSelect() { throw new HttpException(SR.GetString(SR.Cant_Multiselect, "DropDownList")); } } } // File provided for Reference Use Only by Microsoft Corporation (c) 2007.Raises events for the ///control on post back.
Link Menu
This book is available now!
Buy at Amazon US or
Buy at Amazon UK
- HtmlControlAdapter.cs
- CollectionViewSource.cs
- ListViewItemEventArgs.cs
- GenericTypeParameterBuilder.cs
- ToolboxDataAttribute.cs
- ToolStripScrollButton.cs
- ServiceRouteHandler.cs
- InkPresenterAutomationPeer.cs
- OdbcDataAdapter.cs
- StatusBarDesigner.cs
- XmlDocumentSchema.cs
- VectorAnimationBase.cs
- SectionXmlInfo.cs
- SchemaCollectionCompiler.cs
- OAVariantLib.cs
- ManualResetEvent.cs
- Win32.cs
- DataGridViewComboBoxEditingControl.cs
- Section.cs
- CorrelationToken.cs
- IndentedTextWriter.cs
- DataSourceExpression.cs
- _SSPISessionCache.cs
- ComponentCollection.cs
- ListChangedEventArgs.cs
- TcpServerChannel.cs
- PeerName.cs
- CallSiteHelpers.cs
- DiagnosticTrace.cs
- XNodeNavigator.cs
- GeneralTransform.cs
- UDPClient.cs
- FrameworkContentElementAutomationPeer.cs
- ObjectDataSource.cs
- PolyBezierSegment.cs
- DataColumn.cs
- TextParagraphView.cs
- RelationshipConverter.cs
- CommentGlyph.cs
- SessionParameter.cs
- UpdateCommand.cs
- GeneratedCodeAttribute.cs
- TemplateBindingExtension.cs
- SQLBoolean.cs
- SQLInt64.cs
- EntityException.cs
- UserControl.cs
- SynchronizationLockException.cs
- RouteValueExpressionBuilder.cs
- UnmanagedMemoryStreamWrapper.cs
- OutputCacheProfileCollection.cs
- CodeTypeReferenceSerializer.cs
- PerformanceCounterPermissionEntryCollection.cs
- SeekableMessageNavigator.cs
- SourceFilter.cs
- _SslState.cs
- TimerElapsedEvenArgs.cs
- HMAC.cs
- StoreAnnotationsMap.cs
- ScriptingJsonSerializationSection.cs
- _NetRes.cs
- AutoCompleteStringCollection.cs
- OrderByBuilder.cs
- WeakReference.cs
- LinkUtilities.cs
- AutoGeneratedFieldProperties.cs
- RestrictedTransactionalPackage.cs
- DbParameterCollectionHelper.cs
- SmiContext.cs
- ObjectQueryExecutionPlan.cs
- XmlCDATASection.cs
- GridSplitterAutomationPeer.cs
- SpellerError.cs
- CryptographicAttribute.cs
- SqlException.cs
- DetailsViewUpdatedEventArgs.cs
- FormsAuthenticationCredentials.cs
- GenericUriParser.cs
- IgnoreFileBuildProvider.cs
- CodeTypeMember.cs
- InstanceCreationEditor.cs
- LicFileLicenseProvider.cs
- SafeWaitHandle.cs
- Certificate.cs
- SimpleHandlerFactory.cs
- DataGridViewImageColumn.cs
- Shape.cs
- TypeConverterValueSerializer.cs
- ServicePointManagerElement.cs
- ApplicationSecurityManager.cs
- HandlerFactoryWrapper.cs
- X509CertificateCollection.cs
- DataGridTable.cs
- HasCopySemanticsAttribute.cs
- HttpModuleAction.cs
- FileDialogCustomPlace.cs
- OpacityConverter.cs
- NominalTypeEliminator.cs
- AggregatePushdown.cs
- PerformanceCounter.cs