Code:
/ FX-1434 / FX-1434 / 1.0 / untmp / whidbey / REDBITS / ndp / fx / src / xsp / System / Web / UI / WebControls / DropDownList.cs / 2 / 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; using System.Security.Permissions; ////// [ SupportsEventValidation, ValidationProperty("SelectedItem") ] [AspNetHostingPermission(SecurityAction.LinkDemand, Level=AspNetHostingPermissionLevel.Minimal)] [AspNetHostingPermission(SecurityAction.InheritanceDemand, Level=AspNetHostingPermissionLevel.Minimal)] 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; } } ///[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")); } } }Raises events for the ///control on post back.
Link Menu
This book is available now!
Buy at Amazon US or
Buy at Amazon UK
- ProtocolsConfigurationEntry.cs
- UnsafeNativeMethodsPenimc.cs
- EntityParameterCollection.cs
- DataSourceProvider.cs
- DataControlPagerLinkButton.cs
- HttpVersion.cs
- ContainerControl.cs
- SessionPageStateSection.cs
- GlobalizationSection.cs
- LazyLoadBehavior.cs
- WeakHashtable.cs
- DispatcherProcessingDisabled.cs
- Classification.cs
- EventLogInternal.cs
- RemotingConfigParser.cs
- InvokeGenerator.cs
- Win32Exception.cs
- DataListItemEventArgs.cs
- HitTestResult.cs
- MdiWindowListItemConverter.cs
- SoapAttributeOverrides.cs
- MethodMessage.cs
- SoapServerMethod.cs
- FSWPathEditor.cs
- HtmlDocument.cs
- CroppedBitmap.cs
- QuerySelectOp.cs
- MSAAWinEventWrap.cs
- EntityDataSourceStatementEditorForm.cs
- DataGridAddNewRow.cs
- ReferenceSchema.cs
- ExponentialEase.cs
- XmlSchemaProviderAttribute.cs
- MediaSystem.cs
- ContractMapping.cs
- Annotation.cs
- ByeMessageCD1.cs
- PlainXmlDeserializer.cs
- DataGridColumnHeaderItemAutomationPeer.cs
- Size.cs
- XpsStructure.cs
- Size.cs
- Symbol.cs
- CssClassPropertyAttribute.cs
- HttpTransportSecurityElement.cs
- XmlSchemaParticle.cs
- KeyPressEvent.cs
- ProviderMetadataCachedInformation.cs
- ConfigurationSectionCollection.cs
- AppearanceEditorPart.cs
- XsdDateTime.cs
- FormViewPageEventArgs.cs
- ObjectStateManagerMetadata.cs
- DispatcherProcessingDisabled.cs
- BufferedOutputAsyncStream.cs
- sqlser.cs
- OleDbParameter.cs
- BufferModeSettings.cs
- OutputCacheSection.cs
- SqlInternalConnectionSmi.cs
- SqlUserDefinedAggregateAttribute.cs
- Margins.cs
- ValidatedControlConverter.cs
- AccessorTable.cs
- FrameworkContentElementAutomationPeer.cs
- MessageQueueException.cs
- pingexception.cs
- MatrixAnimationUsingPath.cs
- WebBrowserProgressChangedEventHandler.cs
- DbInsertCommandTree.cs
- SqlCaseSimplifier.cs
- RedirectionProxy.cs
- CommonDialog.cs
- ProfileModule.cs
- ParameterBuilder.cs
- ColorConvertedBitmapExtension.cs
- FactoryGenerator.cs
- ApplicationContext.cs
- DSASignatureFormatter.cs
- OrderByBuilder.cs
- fixedPageContentExtractor.cs
- X509Utils.cs
- XpsColorContext.cs
- Source.cs
- BoundField.cs
- Boolean.cs
- ProvidePropertyAttribute.cs
- RequiredArgumentAttribute.cs
- NativeRecognizer.cs
- GradientSpreadMethodValidation.cs
- SqlInternalConnectionTds.cs
- VectorKeyFrameCollection.cs
- ProfilePropertySettings.cs
- Drawing.cs
- DelegatingConfigHost.cs
- XmlAttributeCollection.cs
- SerializerWriterEventHandlers.cs
- WebServiceReceiveDesigner.cs
- _SecureChannel.cs
- LocalizabilityAttribute.cs