Code:
/ FXUpdate3074 / FXUpdate3074 / 1.1 / DEVDIV / depot / DevDiv / releases / whidbey / QFE / ndp / fx / src / xsp / System / Web / UI / WebControls / DropDownList.cs / 3 / 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) { // 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. // Copyright (c) Microsoft Corporation. All rights reserved. //------------------------------------------------------------------------------ //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; 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) { // 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. // Copyright (c) Microsoft Corporation. All rights reserved.Raises events for the ///control on post back.
Link Menu
This book is available now!
Buy at Amazon US or
Buy at Amazon UK
- BaseTemplateBuildProvider.cs
- TextRangeEditLists.cs
- OdbcEnvironment.cs
- OdbcReferenceCollection.cs
- CheckPair.cs
- SqlMultiplexer.cs
- SafeRegistryHandle.cs
- RtfToken.cs
- SafeRightsManagementSessionHandle.cs
- XamlWriterExtensions.cs
- Sentence.cs
- RequestCachePolicyConverter.cs
- SizeLimitedCache.cs
- DrawingContextWalker.cs
- HashHelper.cs
- MatrixTransform.cs
- PagesSection.cs
- WebDescriptionAttribute.cs
- Type.cs
- BaseDataBoundControl.cs
- ObjectReaderCompiler.cs
- DocumentViewerConstants.cs
- DeviceSpecificChoice.cs
- X509AsymmetricSecurityKey.cs
- HighlightVisual.cs
- WsdlBuildProvider.cs
- MsmqEncryptionAlgorithm.cs
- XmlTextWriter.cs
- messageonlyhwndwrapper.cs
- GreenMethods.cs
- TextServicesCompartment.cs
- _HTTPDateParse.cs
- VariableQuery.cs
- EntryPointNotFoundException.cs
- DisplayNameAttribute.cs
- AppSettingsExpressionBuilder.cs
- CloseSequenceResponse.cs
- UshortList2.cs
- EventPrivateKey.cs
- NeutralResourcesLanguageAttribute.cs
- TriggerActionCollection.cs
- DataSourceExpressionCollection.cs
- FrameworkContextData.cs
- FileCodeGroup.cs
- DesignerCapabilities.cs
- LastQueryOperator.cs
- BeginStoryboard.cs
- TripleDESCryptoServiceProvider.cs
- SoapObjectWriter.cs
- DataGridViewCellFormattingEventArgs.cs
- WebPartAddingEventArgs.cs
- ObjectContext.cs
- ListViewItemEventArgs.cs
- CqlIdentifiers.cs
- SelectManyQueryOperator.cs
- lengthconverter.cs
- ExpressionNode.cs
- OrderPreservingPipeliningSpoolingTask.cs
- XmlSchemaProviderAttribute.cs
- SoapProtocolImporter.cs
- StringResourceManager.cs
- Setter.cs
- PrePrepareMethodAttribute.cs
- log.cs
- Style.cs
- SystemThemeKey.cs
- ChildTable.cs
- BaseCodeDomTreeGenerator.cs
- FormatterConverter.cs
- StringPropertyBuilder.cs
- SiteOfOriginContainer.cs
- mediaeventshelper.cs
- IndentTextWriter.cs
- DesignTimeResourceProviderFactoryAttribute.cs
- QuaternionAnimation.cs
- MimeMultiPart.cs
- PassportIdentity.cs
- XmlSchemaImport.cs
- GenerateTemporaryTargetAssembly.cs
- DesignRelationCollection.cs
- ClientSession.cs
- SQLDoubleStorage.cs
- HtmlInputFile.cs
- EdmToObjectNamespaceMap.cs
- Empty.cs
- Grant.cs
- DoubleLinkList.cs
- DbConnectionClosed.cs
- RichTextBoxConstants.cs
- DesigntimeLicenseContext.cs
- CompositeTypefaceMetrics.cs
- TablePattern.cs
- SpecialFolderEnumConverter.cs
- WinOEToolBoxItem.cs
- NextPreviousPagerField.cs
- WebScriptMetadataMessage.cs
- TimestampInformation.cs
- TypeConverterHelper.cs
- TextServicesManager.cs
- TemplateKeyConverter.cs