Code:
/ Dotnetfx_Vista_SP2 / Dotnetfx_Vista_SP2 / 8.0.50727.4016 / DEVDIV / depot / DevDiv / releases / Orcas / QFE / wpf / src / Framework / System / Windows / Markup / DependencyPropertyConverter.cs / 1 / DependencyPropertyConverter.cs
/****************************************************************************\ * * File: DependencyPropertyConverter.cs * * Class for converting a given DependencyProperty to and from a string * * Copyright (C) 2005 by Microsoft Corporation. All rights reserved. * \***************************************************************************/ using System; using System.ComponentModel; // for TypeConverter using System.Globalization; // for CultureInfo using System.Reflection; using MS.Utility; using MS.Internal; using System.Windows; using System.ComponentModel.Design.Serialization; using System.Windows.Documents; namespace System.Windows.Markup { ////// Class for converting a given DependencyProperty to and from a string /// public sealed class DependencyPropertyConverter : TypeConverter { #region Public Methods ////// CanConvertFrom() /// /// ITypeDescriptorContext /// type to convert from ///true if the given type can be converted, flase otherwise public override bool CanConvertFrom(ITypeDescriptorContext context, Type sourceType) { // We can only convert from a string and that too only if we have all the contextual information // Note: Sometimes even the serializer calls CanConvertFrom in order // to determine if it is a valid converter to use for serialization. if (sourceType == typeof(string) && (context is TypeConvertContext)) { return true; } return false; } ////// TypeConverter method override. /// /// ITypeDescriptorContext /// Type to convert to ///true if conversion is possible public override bool CanConvertTo(ITypeDescriptorContext context, Type destinationType) { return false; } ////// ConvertFrom() -TypeConverter method override. using the givein name to return DependencyProperty /// /// ITypeDescriptorContext /// CultureInfo /// Object to convert from ///instance of Command public override object ConvertFrom(ITypeDescriptorContext context, CultureInfo culture, object source) { TypeConvertContext typeConvertContext = context as TypeConvertContext; if (source is string && typeConvertContext != null) { ParserContext parserContext = typeConvertContext.ParserContext; // Find the ownerType from the parser context (this should be generalized, but for now // hard-coded to style & template) Type ownerType = null; ownerType = parserContext.TargetType; DependencyProperty dp = XamlTypeMapper.ParsePropertyName(parserContext, ((string)source).Trim(), ref ownerType); return dp; } throw GetConvertFromException(source); } ////// ConvertTo() - Serialization purposes, returns the string from Command.Name by adding ownerType.FullName /// /// ITypeDescriptorContext /// CultureInfo /// the object to convert from /// the type to convert to ///string object, if the destination type is string public override object ConvertTo(ITypeDescriptorContext context, CultureInfo culture, object value, Type destinationType) { throw GetConvertToException(value, destinationType); } #endregion Public Methods } } // File provided for Reference Use Only by Microsoft Corporation (c) 2007. // Copyright (c) Microsoft Corporation. All rights reserved. /****************************************************************************\ * * File: DependencyPropertyConverter.cs * * Class for converting a given DependencyProperty to and from a string * * Copyright (C) 2005 by Microsoft Corporation. All rights reserved. * \***************************************************************************/ using System; using System.ComponentModel; // for TypeConverter using System.Globalization; // for CultureInfo using System.Reflection; using MS.Utility; using MS.Internal; using System.Windows; using System.ComponentModel.Design.Serialization; using System.Windows.Documents; namespace System.Windows.Markup { ////// Class for converting a given DependencyProperty to and from a string /// public sealed class DependencyPropertyConverter : TypeConverter { #region Public Methods ////// CanConvertFrom() /// /// ITypeDescriptorContext /// type to convert from ///true if the given type can be converted, flase otherwise public override bool CanConvertFrom(ITypeDescriptorContext context, Type sourceType) { // We can only convert from a string and that too only if we have all the contextual information // Note: Sometimes even the serializer calls CanConvertFrom in order // to determine if it is a valid converter to use for serialization. if (sourceType == typeof(string) && (context is TypeConvertContext)) { return true; } return false; } ////// TypeConverter method override. /// /// ITypeDescriptorContext /// Type to convert to ///true if conversion is possible public override bool CanConvertTo(ITypeDescriptorContext context, Type destinationType) { return false; } ////// ConvertFrom() -TypeConverter method override. using the givein name to return DependencyProperty /// /// ITypeDescriptorContext /// CultureInfo /// Object to convert from ///instance of Command public override object ConvertFrom(ITypeDescriptorContext context, CultureInfo culture, object source) { TypeConvertContext typeConvertContext = context as TypeConvertContext; if (source is string && typeConvertContext != null) { ParserContext parserContext = typeConvertContext.ParserContext; // Find the ownerType from the parser context (this should be generalized, but for now // hard-coded to style & template) Type ownerType = null; ownerType = parserContext.TargetType; DependencyProperty dp = XamlTypeMapper.ParsePropertyName(parserContext, ((string)source).Trim(), ref ownerType); return dp; } throw GetConvertFromException(source); } ////// ConvertTo() - Serialization purposes, returns the string from Command.Name by adding ownerType.FullName /// /// ITypeDescriptorContext /// CultureInfo /// the object to convert from /// the type to convert to ///string object, if the destination type is string public override object ConvertTo(ITypeDescriptorContext context, CultureInfo culture, object value, Type destinationType) { throw GetConvertToException(value, destinationType); } #endregion Public Methods } } // File provided for Reference Use Only by Microsoft Corporation (c) 2007. // Copyright (c) Microsoft Corporation. All rights reserved.
Link Menu

This book is available now!
Buy at Amazon US or
Buy at Amazon UK
- ConnectorMovedEventArgs.cs
- ZipIOFileItemStream.cs
- ObjectManager.cs
- StreamFormatter.cs
- AuthenticateEventArgs.cs
- CreateUserWizardStep.cs
- TableLayoutColumnStyleCollection.cs
- SynchronizingStream.cs
- SocketElement.cs
- PersonalizablePropertyEntry.cs
- WinEventQueueItem.cs
- SqlStatistics.cs
- ItemCheckEvent.cs
- ActivityTypeDesigner.xaml.cs
- TagPrefixAttribute.cs
- DataPagerField.cs
- FileDialog_Vista_Interop.cs
- WebPartVerbCollection.cs
- Point3DCollection.cs
- UpdatePanelControlTrigger.cs
- DataGridViewCellStateChangedEventArgs.cs
- AdornerHitTestResult.cs
- ToolStripScrollButton.cs
- ControllableStoryboardAction.cs
- XmlReflectionImporter.cs
- PolyBezierSegmentFigureLogic.cs
- Misc.cs
- NumberFunctions.cs
- PhysicalAddress.cs
- QueryProcessor.cs
- UnmanagedMemoryStream.cs
- WebPartPersonalization.cs
- ImageList.cs
- CredentialSelector.cs
- ObjectListDataBindEventArgs.cs
- CookieParameter.cs
- DoubleAnimationUsingPath.cs
- ListItemParagraph.cs
- CAGDesigner.cs
- FamilyMap.cs
- TaiwanLunisolarCalendar.cs
- AppliedDeviceFiltersDialog.cs
- ConfigurationSectionGroup.cs
- TextContainerChangedEventArgs.cs
- NameValuePermission.cs
- ValidationRule.cs
- ControlUtil.cs
- BitmapSource.cs
- GenerateTemporaryTargetAssembly.cs
- DataGridViewSelectedCellsAccessibleObject.cs
- MemoryRecordBuffer.cs
- InstalledFontCollection.cs
- PerformanceCounterPermissionAttribute.cs
- SoapRpcMethodAttribute.cs
- RegexFCD.cs
- NetworkAddressChange.cs
- QilReference.cs
- Calendar.cs
- IHttpResponseInternal.cs
- DbInsertCommandTree.cs
- WindowsContainer.cs
- FrameSecurityDescriptor.cs
- AsyncOperationLifetimeManager.cs
- ErrorWrapper.cs
- FontNamesConverter.cs
- TextTreeRootTextBlock.cs
- SQLUtility.cs
- UnsafePeerToPeerMethods.cs
- SetterBase.cs
- ThreadAbortException.cs
- MaskDesignerDialog.cs
- Size3D.cs
- BaseTreeIterator.cs
- DataGridViewCellStyleChangedEventArgs.cs
- RectValueSerializer.cs
- ObjectViewEntityCollectionData.cs
- Opcode.cs
- DependencyStoreSurrogate.cs
- HScrollProperties.cs
- WindowsStartMenu.cs
- QueryCacheManager.cs
- AsyncContentLoadedEventArgs.cs
- GridViewUpdateEventArgs.cs
- SQLResource.cs
- SafeEventLogWriteHandle.cs
- FontStyle.cs
- DataRowView.cs
- RemoteX509Token.cs
- WindowsUserNameSecurityTokenAuthenticator.cs
- XmlDataSourceNodeDescriptor.cs
- BufferManager.cs
- ExplicitDiscriminatorMap.cs
- _FtpDataStream.cs
- odbcmetadatacollectionnames.cs
- HttpListenerResponse.cs
- HitTestResult.cs
- ErrorsHelper.cs
- ActionFrame.cs
- PerfService.cs
- InfiniteIntConverter.cs