Code:
/ 4.0 / 4.0 / DEVDIV_TFS / Dev10 / Releases / RTMRel / ndp / fx / src / MIT / System / Web / UI / MobileControls / Design / Util / UnsettableComboBox.cs / 1305376 / UnsettableComboBox.cs
//------------------------------------------------------------------------------ //// Copyright (c) Microsoft Corporation. All rights reserved. // //----------------------------------------------------------------------------- namespace System.Web.UI.Design.MobileControls.Util { using System; using System.Collections; using System.ComponentModel; using System.Diagnostics; using System.Drawing; using System.Windows.Forms; // Standard combobox with a "Not Set" item as the first item in its dropdown. // It also automatically blanks out the "Not Set" item on losing focus. [ System.Security.Permissions.SecurityPermission(System.Security.Permissions.SecurityAction.Demand, Flags=System.Security.Permissions.SecurityPermissionFlag.UnmanagedCode) ] [Obsolete("The System.Web.Mobile.dll assembly has been deprecated and should no longer be used. For information about how to develop ASP.NET mobile applications, see http://go.microsoft.com/fwlink/?LinkId=157231.")] internal class UnsettableComboBox : ComboBox { private String notSetText; private String notSetCompactText; internal UnsettableComboBox() { notSetText = SR.GetString(SR.UnsettableComboBox_NotSetText); notSetCompactText = SR.GetString(SR.UnsettableComboBox_NotSetCompactText); } internal String NotSetText { get { return notSetText; } set { notSetText = value; } } internal String NotSetCompactText { get { return notSetCompactText; } set { notSetCompactText = value; } } public override String Text { get { // handle DropDown styles in Templating Options dialog // if (this.SelectedIndex == 0) || (this.SelectedIndex == -1)) if (this.SelectedIndex == 0) { return String.Empty; } else { return base.Text; } } set { if (value == notSetCompactText) { base.Text = String.Empty; } else { base.Text = value; } } } internal void AddItem(Object item) { EnsureNotSetItem(); Items.Add(item); } internal void EnsureNotSetItem() { if (Items.Count == 0) { Items.Add(notSetText); } } #if UNUSED_CODE internal bool IsSet() { return SelectedIndex > 0; } #endif protected override void OnLostFocus(EventArgs e) { base.OnLostFocus(e); if (SelectedIndex == 0) { SelectedIndex = -1; } } protected override void SetItemsCore(IList values) { Items.Clear(); if (!DesignMode) { Items.Add(notSetText); } // Unfortunately. the interfaces between SetItemsCore and // AddItemsCore are mismatched as of 3106. ArrayList items = new ArrayList(); foreach(Object item in values) { items.Add(item); } base.AddItemsCore(items.ToArray()); } } } // File provided for Reference Use Only by Microsoft Corporation (c) 2007. //------------------------------------------------------------------------------ //// Copyright (c) Microsoft Corporation. All rights reserved. // //----------------------------------------------------------------------------- namespace System.Web.UI.Design.MobileControls.Util { using System; using System.Collections; using System.ComponentModel; using System.Diagnostics; using System.Drawing; using System.Windows.Forms; // Standard combobox with a "Not Set" item as the first item in its dropdown. // It also automatically blanks out the "Not Set" item on losing focus. [ System.Security.Permissions.SecurityPermission(System.Security.Permissions.SecurityAction.Demand, Flags=System.Security.Permissions.SecurityPermissionFlag.UnmanagedCode) ] [Obsolete("The System.Web.Mobile.dll assembly has been deprecated and should no longer be used. For information about how to develop ASP.NET mobile applications, see http://go.microsoft.com/fwlink/?LinkId=157231.")] internal class UnsettableComboBox : ComboBox { private String notSetText; private String notSetCompactText; internal UnsettableComboBox() { notSetText = SR.GetString(SR.UnsettableComboBox_NotSetText); notSetCompactText = SR.GetString(SR.UnsettableComboBox_NotSetCompactText); } internal String NotSetText { get { return notSetText; } set { notSetText = value; } } internal String NotSetCompactText { get { return notSetCompactText; } set { notSetCompactText = value; } } public override String Text { get { // handle DropDown styles in Templating Options dialog // if (this.SelectedIndex == 0) || (this.SelectedIndex == -1)) if (this.SelectedIndex == 0) { return String.Empty; } else { return base.Text; } } set { if (value == notSetCompactText) { base.Text = String.Empty; } else { base.Text = value; } } } internal void AddItem(Object item) { EnsureNotSetItem(); Items.Add(item); } internal void EnsureNotSetItem() { if (Items.Count == 0) { Items.Add(notSetText); } } #if UNUSED_CODE internal bool IsSet() { return SelectedIndex > 0; } #endif protected override void OnLostFocus(EventArgs e) { base.OnLostFocus(e); if (SelectedIndex == 0) { SelectedIndex = -1; } } protected override void SetItemsCore(IList values) { Items.Clear(); if (!DesignMode) { Items.Add(notSetText); } // Unfortunately. the interfaces between SetItemsCore and // AddItemsCore are mismatched as of 3106. ArrayList items = new ArrayList(); foreach(Object item in values) { items.Add(item); } base.AddItemsCore(items.ToArray()); } } } // File provided for Reference Use Only by Microsoft Corporation (c) 2007.
Link Menu
This book is available now!
Buy at Amazon US or
Buy at Amazon UK
- SerialReceived.cs
- EventSinkActivityDesigner.cs
- CaseExpr.cs
- ResourceDescriptionAttribute.cs
- Rect3D.cs
- LineGeometry.cs
- DebugView.cs
- XPathCompileException.cs
- WindowsFormsSectionHandler.cs
- DeploymentSectionCache.cs
- RemotingConfigParser.cs
- Directory.cs
- TableLayoutPanel.cs
- QilInvokeLateBound.cs
- BindingMAnagerBase.cs
- DataGridViewColumnDividerDoubleClickEventArgs.cs
- SystemNetHelpers.cs
- WindowsUpDown.cs
- MenuItemBinding.cs
- HwndStylusInputProvider.cs
- MailMessageEventArgs.cs
- SqlCacheDependencyDatabaseCollection.cs
- AssociationTypeEmitter.cs
- IntSecurity.cs
- AdapterUtil.cs
- PropertyValueChangedEvent.cs
- GACIdentityPermission.cs
- ChainOfResponsibility.cs
- PerfCounters.cs
- BindStream.cs
- HealthMonitoringSectionHelper.cs
- EventSetter.cs
- RequestUriProcessor.cs
- SingleTagSectionHandler.cs
- cookiecontainer.cs
- PeerPresenceInfo.cs
- _LoggingObject.cs
- ForEachDesigner.xaml.cs
- PasswordDeriveBytes.cs
- ImageMetadata.cs
- SecureStringHasher.cs
- DelayedRegex.cs
- AddInDeploymentState.cs
- EpmContentDeSerializer.cs
- TypeInfo.cs
- X509ThumbprintKeyIdentifierClause.cs
- HighlightVisual.cs
- LinqDataSourceHelper.cs
- MarkupProperty.cs
- BitmapVisualManager.cs
- NullableConverter.cs
- LocalizationParserHooks.cs
- shaperfactoryquerycachekey.cs
- EntityCollection.cs
- SequentialUshortCollection.cs
- InternalsVisibleToAttribute.cs
- SystemTcpConnection.cs
- PropertyPath.cs
- Metafile.cs
- BinaryObjectInfo.cs
- ExtendedProtectionPolicyElement.cs
- CellParagraph.cs
- ListViewItem.cs
- iisPickupDirectory.cs
- SplineKeyFrames.cs
- ToggleButton.cs
- PropertyGrid.cs
- OverlappedAsyncResult.cs
- ServiceModelEnhancedConfigurationElementCollection.cs
- ReadOnlyDictionary.cs
- BuildProviderUtils.cs
- DbBuffer.cs
- ModelService.cs
- SystemIPv4InterfaceProperties.cs
- LinearKeyFrames.cs
- _ReceiveMessageOverlappedAsyncResult.cs
- Pipe.cs
- SqlTransaction.cs
- formatter.cs
- ParagraphResult.cs
- DeviceSpecificChoice.cs
- FigureParagraph.cs
- DescendantOverDescendantQuery.cs
- EntityStoreSchemaFilterEntry.cs
- FSWPathEditor.cs
- XmlBindingWorker.cs
- DataControlButton.cs
- WpfKnownType.cs
- MethodToken.cs
- ResourceCategoryAttribute.cs
- SizeKeyFrameCollection.cs
- BaseValidatorDesigner.cs
- ReferencedType.cs
- CursorConverter.cs
- ElementsClipboardData.cs
- SevenBitStream.cs
- OdbcConnection.cs
- UrlMappingsModule.cs
- XPathSelectionIterator.cs
- DbCommandDefinition.cs