Code:
/ Net / Net / 3.5.50727.3053 / DEVDIV / depot / DevDiv / releases / Orcas / SP / wpf / src / Core / CSharp / System / Windows / Media / PixelFormatConverter.cs / 1 / PixelFormatConverter.cs
//------------------------------------------------------------------------------ // Microsoft Avalon // Copyright (c) Microsoft Corporation, 2001 // // File: PixelFormatConverter.cs // //----------------------------------------------------------------------------- using System; using System.ComponentModel; using System.ComponentModel.Design.Serialization; using System.Reflection; using MS.Internal; using System.Text; using System.Collections; using System.Globalization; using System.Windows; using System.Windows.Media; using System.Runtime.InteropServices; using System.Diagnostics; using System.Security; using SR=MS.Internal.PresentationCore.SR; using SRID=MS.Internal.PresentationCore.SRID; namespace System.Windows.Media { #region PixelFormatConverter //----------------------------------------------------------------------------- // PixelFormatConverter //----------------------------------------------------------------------------- ////// PixelFormatConverter /// public sealed class PixelFormatConverter : TypeConverter { ////// CanConvertFrom - Returns whether or not this class can convert from a given type /// public override bool CanConvertFrom(ITypeDescriptorContext td, Type t) { if (t == typeof(string)) { return true; } else { return false; } } ////// TypeConverter method override. /// /// ITypeDescriptorContext /// Type to convert to ///true if conversion is possible public override bool CanConvertTo(ITypeDescriptorContext context, Type destinationType) { if (destinationType == typeof(InstanceDescriptor) || destinationType == typeof(string)) { return true; } return base.CanConvertTo(context, destinationType); } ////// test /// public new object ConvertFromString(String value) { if ( null == value) { return null; } return new PixelFormat (value); } ////// test /// public override object ConvertFrom(ITypeDescriptorContext td, System.Globalization.CultureInfo ci, object o) { if ( null == o) { return null; } return new PixelFormat(o as string); } ////// TypeConverter method implementation. /// /// ITypeDescriptorContext /// current culture (see CLR specs) /// value to convert from /// Type to convert to ///converted value ////// Critical: calls InstanceDescriptor ctor which LinkDemands /// PublicOK: can only make an InstanceDescriptor for PixelFormat, not an arbitrary class /// [SecurityCritical] public override object ConvertTo(ITypeDescriptorContext context, CultureInfo culture, object value, Type destinationType) { if (null == destinationType) { throw new ArgumentNullException("destinationType"); } if (null == value) { throw new ArgumentNullException("value"); } if (!(value is PixelFormat)) { throw new ArgumentException(SR.Get(SRID.General_Expected_Type,"PixelFormat")); } if (destinationType == typeof(InstanceDescriptor)) { ConstructorInfo ci = typeof(PixelFormat).GetConstructor(new Type[]{typeof(string)}); PixelFormat p = (PixelFormat)value; return new InstanceDescriptor(ci, new object[]{p.ToString()}); } else if (destinationType == typeof(string)) { PixelFormat p = (PixelFormat)value; return p.ToString (); } return base.ConvertTo(context, culture, value, destinationType); } } #endregion // PixelFormatConverter } // File provided for Reference Use Only by Microsoft Corporation (c) 2007. // Copyright (c) Microsoft Corporation. All rights reserved. //------------------------------------------------------------------------------ // Microsoft Avalon // Copyright (c) Microsoft Corporation, 2001 // // File: PixelFormatConverter.cs // //----------------------------------------------------------------------------- using System; using System.ComponentModel; using System.ComponentModel.Design.Serialization; using System.Reflection; using MS.Internal; using System.Text; using System.Collections; using System.Globalization; using System.Windows; using System.Windows.Media; using System.Runtime.InteropServices; using System.Diagnostics; using System.Security; using SR=MS.Internal.PresentationCore.SR; using SRID=MS.Internal.PresentationCore.SRID; namespace System.Windows.Media { #region PixelFormatConverter //----------------------------------------------------------------------------- // PixelFormatConverter //----------------------------------------------------------------------------- ////// PixelFormatConverter /// public sealed class PixelFormatConverter : TypeConverter { ////// CanConvertFrom - Returns whether or not this class can convert from a given type /// public override bool CanConvertFrom(ITypeDescriptorContext td, Type t) { if (t == typeof(string)) { return true; } else { return false; } } ////// TypeConverter method override. /// /// ITypeDescriptorContext /// Type to convert to ///true if conversion is possible public override bool CanConvertTo(ITypeDescriptorContext context, Type destinationType) { if (destinationType == typeof(InstanceDescriptor) || destinationType == typeof(string)) { return true; } return base.CanConvertTo(context, destinationType); } ////// test /// public new object ConvertFromString(String value) { if ( null == value) { return null; } return new PixelFormat (value); } ////// test /// public override object ConvertFrom(ITypeDescriptorContext td, System.Globalization.CultureInfo ci, object o) { if ( null == o) { return null; } return new PixelFormat(o as string); } ////// TypeConverter method implementation. /// /// ITypeDescriptorContext /// current culture (see CLR specs) /// value to convert from /// Type to convert to ///converted value ////// Critical: calls InstanceDescriptor ctor which LinkDemands /// PublicOK: can only make an InstanceDescriptor for PixelFormat, not an arbitrary class /// [SecurityCritical] public override object ConvertTo(ITypeDescriptorContext context, CultureInfo culture, object value, Type destinationType) { if (null == destinationType) { throw new ArgumentNullException("destinationType"); } if (null == value) { throw new ArgumentNullException("value"); } if (!(value is PixelFormat)) { throw new ArgumentException(SR.Get(SRID.General_Expected_Type,"PixelFormat")); } if (destinationType == typeof(InstanceDescriptor)) { ConstructorInfo ci = typeof(PixelFormat).GetConstructor(new Type[]{typeof(string)}); PixelFormat p = (PixelFormat)value; return new InstanceDescriptor(ci, new object[]{p.ToString()}); } else if (destinationType == typeof(string)) { PixelFormat p = (PixelFormat)value; return p.ToString (); } return base.ConvertTo(context, culture, value, destinationType); } } #endregion // PixelFormatConverter } // 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
- DiscoveryMessageSequenceGenerator.cs
- DesignConnection.cs
- OperatorExpressions.cs
- GacUtil.cs
- EastAsianLunisolarCalendar.cs
- WasEndpointConfigContainer.cs
- UserInitiatedNavigationPermission.cs
- TextParaLineResult.cs
- ClientSettings.cs
- PrintControllerWithStatusDialog.cs
- DeviceContext2.cs
- TemplateKey.cs
- Stylesheet.cs
- storepermissionattribute.cs
- DiscoveryDocumentLinksPattern.cs
- Identity.cs
- QEncodedStream.cs
- ClientSettingsSection.cs
- SqlDataSourceCommandEventArgs.cs
- RC2.cs
- AQNBuilder.cs
- BindingList.cs
- XmlDomTextWriter.cs
- Rules.cs
- WindowsListView.cs
- ConfigurationUtility.cs
- DefaultEvaluationContext.cs
- DesignColumnCollection.cs
- UnsafeNativeMethods.cs
- TransformDescriptor.cs
- AssertFilter.cs
- ValueTypeFieldReference.cs
- XMLUtil.cs
- InvokeMethodDesigner.xaml.cs
- pingexception.cs
- CodeExporter.cs
- WeakEventTable.cs
- ToolStripDropTargetManager.cs
- ExpressionVisitorHelpers.cs
- StandardTransformFactory.cs
- SqlProfileProvider.cs
- EraserBehavior.cs
- SiteMapDataSourceView.cs
- WebConfigurationHost.cs
- HitTestDrawingContextWalker.cs
- BrowserTree.cs
- XmlQuerySequence.cs
- DesignTableCollection.cs
- LostFocusEventManager.cs
- TreeNodeCollectionEditorDialog.cs
- ProvidersHelper.cs
- FrameworkContentElement.cs
- DataGridHeaderBorder.cs
- LocalizationParserHooks.cs
- EntityContainerEmitter.cs
- WCFModelStrings.Designer.cs
- ValuePattern.cs
- ServicePoint.cs
- XmlSchemaAll.cs
- DocumentPage.cs
- ImportRequest.cs
- EventHandlerList.cs
- BaseHashHelper.cs
- ParsedAttributeCollection.cs
- PropertyRecord.cs
- EventLogLink.cs
- PropertyGeneratedEventArgs.cs
- RSAPKCS1KeyExchangeFormatter.cs
- ExtendedPropertyCollection.cs
- ExpressionEditorAttribute.cs
- ScrollItemPattern.cs
- RemotingConfiguration.cs
- SQLMoney.cs
- SoapEnvelopeProcessingElement.cs
- DataContractFormatAttribute.cs
- CodeConstructor.cs
- ContextDataSource.cs
- DataObjectCopyingEventArgs.cs
- SqlResolver.cs
- MetaModel.cs
- mediapermission.cs
- SafeBitVector32.cs
- ListView.cs
- PerformanceCounterPermissionAttribute.cs
- BuilderInfo.cs
- CacheAxisQuery.cs
- SaveRecipientRequest.cs
- RowToParametersTransformer.cs
- PerformanceCounterLib.cs
- DesignTimeParseData.cs
- Timeline.cs
- PathGeometry.cs
- Popup.cs
- ContainerVisual.cs
- PickBranchDesigner.xaml.cs
- DataGridViewTopLeftHeaderCell.cs
- DeploymentSectionCache.cs
- Empty.cs
- PersonalizableAttribute.cs
- SerializableAttribute.cs