Code:
/ DotNET / DotNET / 8.0 / untmp / whidbey / REDBITS / ndp / fx / src / xsp / System / Web / UI / WebControls / VerticalAlignConverter.cs / 1 / VerticalAlignConverter.cs
//------------------------------------------------------------------------------ //// Copyright (c) Microsoft Corporation. All rights reserved. // //----------------------------------------------------------------------------- // namespace System.Web.UI.WebControls { using System; using System.Collections; using System.ComponentModel; using System.Globalization; internal class VerticalAlignConverter : EnumConverter { static string[] stringValues = new String[(int) VerticalAlign.Bottom + 1]; static VerticalAlignConverter () { stringValues[(int) VerticalAlign.NotSet] = "NotSet"; stringValues[(int) VerticalAlign.Top] = "Top"; stringValues[(int) VerticalAlign.Middle] = "Middle"; stringValues[(int) VerticalAlign.Bottom] = "Bottom"; } // this constructor needs to be public despite the fact that it's in an internal // class so it can be created by Activator.CreateInstance. public VerticalAlignConverter () : base(typeof(VerticalAlign)) {} public override bool CanConvertFrom(ITypeDescriptorContext context, Type sourceType) { if (sourceType == typeof(string)) { return true; } else { return base.CanConvertFrom(context, sourceType); } } public override object ConvertFrom(ITypeDescriptorContext context, CultureInfo culture, object value) { if (value == null) return null; if (value is string) { string textValue = ((string)value).Trim(); if (textValue.Length == 0) return VerticalAlign.NotSet; switch (textValue) { case "NotSet": return VerticalAlign.NotSet; case "Top": return VerticalAlign.Top; case "Middle": return VerticalAlign.Middle; case "Bottom": return VerticalAlign.Bottom; } } return base.ConvertFrom(context, culture, value); } public override bool CanConvertTo(ITypeDescriptorContext context, Type sourceType) { if (sourceType == typeof(string)) { return true; } return base.CanConvertTo(context, sourceType); } public override object ConvertTo(ITypeDescriptorContext context, CultureInfo culture, object value, Type destinationType) { if (destinationType == typeof(string) && ((int) value <= (int)VerticalAlign.Bottom)) { return stringValues[(int) value]; } return base.ConvertTo(context, culture, value, destinationType); } } }
Link Menu

This book is available now!
Buy at Amazon US or
Buy at Amazon UK
- SmiEventSink_DeferedProcessing.cs
- ApplicationId.cs
- ParentUndoUnit.cs
- CryptographicAttribute.cs
- ToolStripDropDownButton.cs
- FilterEventArgs.cs
- WebPartCollection.cs
- EmptyStringExpandableObjectConverter.cs
- Control.cs
- infer.cs
- ArgumentException.cs
- AsynchronousChannel.cs
- AccessDataSourceWizardForm.cs
- OleDbWrapper.cs
- RegexCaptureCollection.cs
- PropertyManager.cs
- ArraySegment.cs
- DbConnectionPoolOptions.cs
- ExpressionBindingCollection.cs
- OneOfElement.cs
- WorkerRequest.cs
- ExecutedRoutedEventArgs.cs
- ProcessInputEventArgs.cs
- activationcontext.cs
- DefaultParameterValueAttribute.cs
- HitTestParameters3D.cs
- State.cs
- DataTemplateSelector.cs
- TypeBuilderInstantiation.cs
- bidPrivateBase.cs
- ServiceInstallComponent.cs
- XamlFilter.cs
- TraceHwndHost.cs
- ProtocolsConfiguration.cs
- ContentValidator.cs
- ToolStripPanelRow.cs
- TraceProvider.cs
- dtdvalidator.cs
- PerfCounterSection.cs
- ZoneLinkButton.cs
- SignerInfo.cs
- DataGridViewRowPostPaintEventArgs.cs
- safex509handles.cs
- Tool.cs
- MethodCallConverter.cs
- CannotUnloadAppDomainException.cs
- ControlParameter.cs
- JavascriptCallbackBehaviorAttribute.cs
- DataFormats.cs
- DoubleConverter.cs
- PowerStatus.cs
- NullableBoolConverter.cs
- DependencyPropertyKey.cs
- AttachedPropertyInfo.cs
- ContainerParaClient.cs
- TypeBrowserDialog.cs
- HostedHttpTransportManager.cs
- ParseHttpDate.cs
- CheckBoxList.cs
- SelectedPathEditor.cs
- BaseDataList.cs
- StatusBarDesigner.cs
- MyContact.cs
- TdsParserSafeHandles.cs
- DbProviderSpecificTypePropertyAttribute.cs
- RemotingServices.cs
- AttachedPropertyBrowsableAttribute.cs
- SettingsPropertyValueCollection.cs
- StringResourceManager.cs
- EncryptedKey.cs
- X509Utils.cs
- AsyncCompletedEventArgs.cs
- BufferModesCollection.cs
- ObjectStateFormatter.cs
- LayoutSettings.cs
- GroupItem.cs
- HtmlLabelAdapter.cs
- TransactionTable.cs
- DataStorage.cs
- TextContainer.cs
- TextEncodedRawTextWriter.cs
- SmtpCommands.cs
- StylusButtonCollection.cs
- FixedSOMPageConstructor.cs
- TdsParameterSetter.cs
- DeviceFiltersSection.cs
- X509PeerCertificateElement.cs
- FileAuthorizationModule.cs
- XmlAttributeCache.cs
- BindingList.cs
- RecognitionEventArgs.cs
- CatchDesigner.xaml.cs
- ProfilePropertySettings.cs
- MeasureData.cs
- DataBindingCollectionEditor.cs
- EntityProxyTypeInfo.cs
- SpoolingTaskBase.cs
- HtmlForm.cs
- FormView.cs
- FrameworkElementFactoryMarkupObject.cs