Code:
/ 4.0 / 4.0 / untmp / 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.
Link Menu
This book is available now!
Buy at Amazon US or
Buy at Amazon UK
- StateMachineWorkflowInstance.cs
- WebServiceResponse.cs
- AdCreatedEventArgs.cs
- PerformanceCounterPermission.cs
- XamlBrushSerializer.cs
- DataGridViewRow.cs
- SqlException.cs
- ValueTypeFixupInfo.cs
- BitmapSizeOptions.cs
- CallTemplateAction.cs
- JsonFormatWriterGenerator.cs
- RtfControlWordInfo.cs
- MdImport.cs
- SparseMemoryStream.cs
- ItemContainerProviderWrapper.cs
- ValidationHelpers.cs
- Single.cs
- PeerEndPoint.cs
- NumberFunctions.cs
- SharedPerformanceCounter.cs
- TypefaceCollection.cs
- NullableLongMinMaxAggregationOperator.cs
- MemberAccessException.cs
- SiteMap.cs
- ToolZone.cs
- CardSpaceShim.cs
- SocketPermission.cs
- XamlTreeBuilderBamlRecordWriter.cs
- UniqueEventHelper.cs
- PropertyGridCommands.cs
- DbConnectionHelper.cs
- SymmetricKey.cs
- LassoHelper.cs
- StackSpiller.Bindings.cs
- SafeTimerHandle.cs
- SqlDataSourceCommandEventArgs.cs
- SearchForVirtualItemEventArgs.cs
- LogicalExpr.cs
- KeyedCollection.cs
- XmlSerializerVersionAttribute.cs
- DataBoundLiteralControl.cs
- Light.cs
- ColorConvertedBitmapExtension.cs
- ClientSettingsSection.cs
- AmbientProperties.cs
- DataSourceUtil.cs
- MappableObjectManager.cs
- NotImplementedException.cs
- XPathNode.cs
- MediaTimeline.cs
- Tracking.cs
- TreeNodeCollectionEditor.cs
- ClockController.cs
- Int32Rect.cs
- TrackingProfile.cs
- ProcessProtocolHandler.cs
- XmlFormatMapping.cs
- NativeMethodsCLR.cs
- ProxyWebPartManager.cs
- FormViewUpdateEventArgs.cs
- WebPartsSection.cs
- OleDbTransaction.cs
- SecurityException.cs
- RC2CryptoServiceProvider.cs
- CodeTypeMemberCollection.cs
- DictionaryManager.cs
- CodeIdentifiers.cs
- PageBuildProvider.cs
- CodeArgumentReferenceExpression.cs
- DispatcherFrame.cs
- TextOnlyOutput.cs
- sortedlist.cs
- SingleQueryOperator.cs
- InheritedPropertyChangedEventArgs.cs
- SizeChangedInfo.cs
- FileClassifier.cs
- Binding.cs
- PropertyInfo.cs
- SerializationInfo.cs
- OrCondition.cs
- PeerMessageDispatcher.cs
- Compilation.cs
- DataTemplate.cs
- SignerInfo.cs
- ItemContainerGenerator.cs
- XmlHierarchyData.cs
- TerminatorSinks.cs
- HandleCollector.cs
- StreamWriter.cs
- TextPointer.cs
- CommandField.cs
- BindingSource.cs
- ErrorRuntimeConfig.cs
- DataColumnMapping.cs
- FlowDocumentPageViewerAutomationPeer.cs
- DbMetaDataColumnNames.cs
- EdmEntityTypeAttribute.cs
- WebHeaderCollection.cs
- StandardTransformFactory.cs
- RegexCaptureCollection.cs