Code:
/ FX-1434 / FX-1434 / 1.0 / untmp / whidbey / REDBITS / 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); } } }
Link Menu

This book is available now!
Buy at Amazon US or
Buy at Amazon UK
- ListViewItemSelectionChangedEvent.cs
- SqlFlattener.cs
- WebRequestModulesSection.cs
- SQLRoleProvider.cs
- XmlILOptimizerVisitor.cs
- InvokePattern.cs
- EncryptedHeader.cs
- ObjectDataSourceFilteringEventArgs.cs
- __Filters.cs
- ToolStripArrowRenderEventArgs.cs
- CodeTypeConstructor.cs
- ParentQuery.cs
- GenericsInstances.cs
- SystemBrushes.cs
- ListenerChannelContext.cs
- UpdateException.cs
- TextEditorSpelling.cs
- StdValidatorsAndConverters.cs
- SafeCloseHandleCritical.cs
- MemoryStream.cs
- ParserContext.cs
- LazyInitializer.cs
- XPathAncestorIterator.cs
- EventSetterHandlerConverter.cs
- XmlDataSourceView.cs
- ReadOnlyObservableCollection.cs
- MarkerProperties.cs
- ScrollBarRenderer.cs
- PersonalizableAttribute.cs
- XmlSchemaComplexContent.cs
- CriticalExceptions.cs
- XmlILIndex.cs
- GroupByExpressionRewriter.cs
- ProfileParameter.cs
- NamespaceList.cs
- RuntimeConfigLKG.cs
- XmlUTF8TextWriter.cs
- DataGridViewComboBoxEditingControl.cs
- MatrixCamera.cs
- MailWebEventProvider.cs
- ReaderWriterLockWrapper.cs
- CodeTypeMemberCollection.cs
- DataGridViewHitTestInfo.cs
- input.cs
- RuntimeResourceSet.cs
- filewebresponse.cs
- TextTreeRootNode.cs
- StateMachineWorkflow.cs
- RootNamespaceAttribute.cs
- ControlUtil.cs
- HMACSHA1.cs
- ExceptionTranslationTable.cs
- RemoteWebConfigurationHostStream.cs
- HttpHostedTransportConfiguration.cs
- Brush.cs
- Int32CollectionConverter.cs
- PathFigureCollection.cs
- DataGridViewLinkColumn.cs
- MobilePage.cs
- TextChangedEventArgs.cs
- KeyFrames.cs
- LexicalChunk.cs
- Parameter.cs
- ConfigurationSection.cs
- SerializationAttributes.cs
- X509Certificate2.cs
- ObjectViewListener.cs
- TaskHelper.cs
- OleDbException.cs
- SafeSystemMetrics.cs
- SQLGuid.cs
- PeerInvitationResponse.cs
- StylusPointCollection.cs
- DesignerDataConnection.cs
- EmptyEnumerable.cs
- DragStartedEventArgs.cs
- MetadataPropertyvalue.cs
- ComponentDispatcherThread.cs
- TableLayoutSettingsTypeConverter.cs
- BamlWriter.cs
- WrappedIUnknown.cs
- DataTableReader.cs
- Vector3DValueSerializer.cs
- TargetConverter.cs
- CodeNamespaceImportCollection.cs
- GenericWebPart.cs
- InputLanguageEventArgs.cs
- RequestQueryParser.cs
- ReadOnlyDictionary.cs
- RectAnimationBase.cs
- DebugHandleTracker.cs
- ControlSerializer.cs
- MarkupExtensionParser.cs
- TextWriter.cs
- Icon.cs
- StoreAnnotationsMap.cs
- LinqExpressionNormalizer.cs
- DrawingContextDrawingContextWalker.cs
- CompiledAction.cs
- AutomationProperties.cs