Code:
/ Net / Net / 3.5.50727.3053 / DEVDIV / depot / DevDiv / releases / whidbey / netfxsp / ndp / fx / src / CompMod / System / ComponentModel / GuidConverter.cs / 1 / GuidConverter.cs
//------------------------------------------------------------------------------ //// Copyright (c) Microsoft Corporation. All rights reserved. // //----------------------------------------------------------------------------- /* */ namespace System.ComponentModel { using Microsoft.Win32; using System.ComponentModel.Design.Serialization; using System.Diagnostics; using System.Globalization; using System.Reflection; using System.Runtime.InteropServices; using System.Runtime.Remoting; using System.Runtime.Serialization.Formatters; using System.Security.Permissions; ////// [HostProtection(SharedState = true)] public class GuidConverter : TypeConverter { ///Provides a /// type converter to convert globally unique identifier objects to and from various /// other representations. ////// public override bool CanConvertFrom(ITypeDescriptorContext context, Type sourceType) { if (sourceType == typeof(string)) { return true; } return base.CanConvertFrom(context, sourceType); } ///Gets a value indicating whether this /// converter can convert an object in the given source type to a globally unique identifier object /// using the context. ////// public override bool CanConvertTo(ITypeDescriptorContext context, Type destinationType) { if (destinationType == typeof(InstanceDescriptor)) { return true; } return base.CanConvertTo(context, destinationType); } ///Gets a value indicating whether this converter can /// convert an object to the given destination type using the context. ////// public override object ConvertFrom(ITypeDescriptorContext context, CultureInfo culture, object value) { if (value is string) { string text = ((string)value).Trim(); return new Guid(text); } return base.ConvertFrom(context, culture, value); } ///Converts /// the given object to a globally unique identifier object. ////// Converts the given object to another type. The most common types to convert /// are to and from a string object. The default implementation will make a call /// to ToString on the object if the object is valid and if the destination /// type is string. If this cannot convert to the desitnation type, this will /// throw a NotSupportedException. /// public override object ConvertTo(ITypeDescriptorContext context, CultureInfo culture, object value, Type destinationType) { if (destinationType == null) { throw new ArgumentNullException("destinationType"); } if (destinationType == typeof(InstanceDescriptor) && value is Guid) { ConstructorInfo ctor = typeof(Guid).GetConstructor(new Type[] {typeof(string)}); if (ctor != null) { return new InstanceDescriptor(ctor, new object[] {value.ToString()}); } } return base.ConvertTo(context, culture, value, destinationType); } } } // File provided for Reference Use Only by Microsoft Corporation (c) 2007. //------------------------------------------------------------------------------ //// Copyright (c) Microsoft Corporation. All rights reserved. // //----------------------------------------------------------------------------- /* */ namespace System.ComponentModel { using Microsoft.Win32; using System.ComponentModel.Design.Serialization; using System.Diagnostics; using System.Globalization; using System.Reflection; using System.Runtime.InteropServices; using System.Runtime.Remoting; using System.Runtime.Serialization.Formatters; using System.Security.Permissions; ////// [HostProtection(SharedState = true)] public class GuidConverter : TypeConverter { ///Provides a /// type converter to convert globally unique identifier objects to and from various /// other representations. ////// public override bool CanConvertFrom(ITypeDescriptorContext context, Type sourceType) { if (sourceType == typeof(string)) { return true; } return base.CanConvertFrom(context, sourceType); } ///Gets a value indicating whether this /// converter can convert an object in the given source type to a globally unique identifier object /// using the context. ////// public override bool CanConvertTo(ITypeDescriptorContext context, Type destinationType) { if (destinationType == typeof(InstanceDescriptor)) { return true; } return base.CanConvertTo(context, destinationType); } ///Gets a value indicating whether this converter can /// convert an object to the given destination type using the context. ////// public override object ConvertFrom(ITypeDescriptorContext context, CultureInfo culture, object value) { if (value is string) { string text = ((string)value).Trim(); return new Guid(text); } return base.ConvertFrom(context, culture, value); } ///Converts /// the given object to a globally unique identifier object. ////// Converts the given object to another type. The most common types to convert /// are to and from a string object. The default implementation will make a call /// to ToString on the object if the object is valid and if the destination /// type is string. If this cannot convert to the desitnation type, this will /// throw a NotSupportedException. /// public override object ConvertTo(ITypeDescriptorContext context, CultureInfo culture, object value, Type destinationType) { if (destinationType == null) { throw new ArgumentNullException("destinationType"); } if (destinationType == typeof(InstanceDescriptor) && value is Guid) { ConstructorInfo ctor = typeof(Guid).GetConstructor(new Type[] {typeof(string)}); if (ctor != null) { return new InstanceDescriptor(ctor, new object[] {value.ToString()}); } } return base.ConvertTo(context, culture, value, destinationType); } } } // 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
- CodeRemoveEventStatement.cs
- PagerSettings.cs
- CustomError.cs
- OdbcRowUpdatingEvent.cs
- RowParagraph.cs
- SmtpNetworkElement.cs
- DictionaryKeyPropertyAttribute.cs
- TheQuery.cs
- Matrix3DConverter.cs
- WorkBatch.cs
- RowSpanVector.cs
- TypeLoadException.cs
- PolicyImporterElement.cs
- TeredoHelper.cs
- DynamicAttribute.cs
- ListViewInsertedEventArgs.cs
- PointLight.cs
- PersonalizationEntry.cs
- TextEditorLists.cs
- GroupLabel.cs
- EventLogInformation.cs
- StandardCommandToolStripMenuItem.cs
- EntityParameterCollection.cs
- FixedDocumentSequencePaginator.cs
- ResourceAssociationTypeEnd.cs
- CatalogPartCollection.cs
- Utils.cs
- ColumnMapVisitor.cs
- SelectiveScrollingGrid.cs
- TextCompositionEventArgs.cs
- ElementMarkupObject.cs
- SharedStatics.cs
- FlowDocumentFormatter.cs
- UniqueConstraint.cs
- OrderedDictionary.cs
- CompilerScope.Storage.cs
- EnterpriseServicesHelper.cs
- NegatedConstant.cs
- MutexSecurity.cs
- TableCellCollection.cs
- XPathSelectionIterator.cs
- XamlPoint3DCollectionSerializer.cs
- StyleReferenceConverter.cs
- HierarchicalDataTemplate.cs
- PerspectiveCamera.cs
- ExpressionEvaluator.cs
- FilterFactory.cs
- CustomLineCap.cs
- BidOverLoads.cs
- SystemIcmpV6Statistics.cs
- BaseAsyncResult.cs
- ExecutionEngineException.cs
- FontFamilyValueSerializer.cs
- ObjectFullSpanRewriter.cs
- ErrorWebPart.cs
- WpfWebRequestHelper.cs
- FlatButtonAppearance.cs
- MarkupProperty.cs
- RepeatButton.cs
- HttpApplication.cs
- TargetException.cs
- MruCache.cs
- unsafeIndexingFilterStream.cs
- BridgeDataReader.cs
- XmlIgnoreAttribute.cs
- QuaternionRotation3D.cs
- TextFormatterHost.cs
- LinkClickEvent.cs
- AsyncCompletedEventArgs.cs
- SamlSerializer.cs
- PublisherMembershipCondition.cs
- Int32CollectionValueSerializer.cs
- Clause.cs
- ChildDocumentBlock.cs
- FocusTracker.cs
- AuthenticateEventArgs.cs
- XmlNotation.cs
- ByteRangeDownloader.cs
- SecurityResources.cs
- FieldNameLookup.cs
- ScriptReferenceBase.cs
- StreamGeometryContext.cs
- _CommandStream.cs
- DesignTable.cs
- CertificateReferenceElement.cs
- StoreItemCollection.Loader.cs
- SQLBytesStorage.cs
- HTTP_SERVICE_CONFIG_URLACL_KEY.cs
- SmtpNegotiateAuthenticationModule.cs
- LassoSelectionBehavior.cs
- MediaTimeline.cs
- TableItemProviderWrapper.cs
- TypeValidationEventArgs.cs
- ExtenderProviderService.cs
- CommandDevice.cs
- FastEncoderWindow.cs
- DataMisalignedException.cs
- SafeNativeMethods.cs
- RemoteArgument.cs
- XXXInfos.cs