Code:
/ Dotnetfx_Win7_3.5.1 / Dotnetfx_Win7_3.5.1 / 3.5.1 / DEVDIV / depot / DevDiv / releases / whidbey / NetFXspW7 / ndp / fx / src / WinForms / Managed / System / WinForms / ComponentModel / COM2Interop / COM2ColorConverter.cs / 1 / COM2ColorConverter.cs
//------------------------------------------------------------------------------ //// Copyright (c) Microsoft Corporation. All rights reserved. // //----------------------------------------------------------------------------- namespace System.Windows.Forms.ComponentModel.Com2Interop { using System.Runtime.Serialization.Formatters; using System.ComponentModel; using System.Diagnostics; using System; using System.Drawing; using System.Collections; using Microsoft.Win32; ////// /// This class maps an OLE_COLOR to a managed Color editor. /// internal class Com2ColorConverter : Com2DataTypeToManagedDataTypeConverter{ ////// /// Returns the managed type that this editor maps the property type to. /// public override Type ManagedType{ get{ return typeof(Color); } } ////// /// Converts the native value into a managed value /// public override object ConvertNativeToManaged(object nativeValue, Com2PropertyDescriptor pd){ object baseValue = nativeValue; int intVal = 0; // get the integer value out of the native... // if (nativeValue is UInt32){ intVal = (int)(UInt32)nativeValue; } else if (nativeValue is Int32){ intVal = (int)nativeValue; } return ColorTranslator.FromOle(intVal); } ////// /// Converts the managed value into a native value /// public override object ConvertManagedToNative(object managedValue, Com2PropertyDescriptor pd, ref bool cancelSet){ // don't cancel the set cancelSet = false; // we default to black. // if (managedValue == null){ managedValue = Color.Black; } if (managedValue is Color){ return ColorTranslator.ToOle(((Color)managedValue)); } Debug.Fail("Don't know how to set type:" + managedValue.GetType().Name); return 0; } } } // File provided for Reference Use Only by Microsoft Corporation (c) 2007. //------------------------------------------------------------------------------ //// Copyright (c) Microsoft Corporation. All rights reserved. // //----------------------------------------------------------------------------- namespace System.Windows.Forms.ComponentModel.Com2Interop { using System.Runtime.Serialization.Formatters; using System.ComponentModel; using System.Diagnostics; using System; using System.Drawing; using System.Collections; using Microsoft.Win32; ////// /// This class maps an OLE_COLOR to a managed Color editor. /// internal class Com2ColorConverter : Com2DataTypeToManagedDataTypeConverter{ ////// /// Returns the managed type that this editor maps the property type to. /// public override Type ManagedType{ get{ return typeof(Color); } } ////// /// Converts the native value into a managed value /// public override object ConvertNativeToManaged(object nativeValue, Com2PropertyDescriptor pd){ object baseValue = nativeValue; int intVal = 0; // get the integer value out of the native... // if (nativeValue is UInt32){ intVal = (int)(UInt32)nativeValue; } else if (nativeValue is Int32){ intVal = (int)nativeValue; } return ColorTranslator.FromOle(intVal); } ////// /// Converts the managed value into a native value /// public override object ConvertManagedToNative(object managedValue, Com2PropertyDescriptor pd, ref bool cancelSet){ // don't cancel the set cancelSet = false; // we default to black. // if (managedValue == null){ managedValue = Color.Black; } if (managedValue is Color){ return ColorTranslator.ToOle(((Color)managedValue)); } Debug.Fail("Don't know how to set type:" + managedValue.GetType().Name); return 0; } } } // 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
- DesignerAdRotatorAdapter.cs
- GraphicsState.cs
- AccessorTable.cs
- HtmlTable.cs
- SerializationInfoEnumerator.cs
- printdlgexmarshaler.cs
- TimestampInformation.cs
- HotSpot.cs
- ModelEditingScope.cs
- TextHidden.cs
- ToolStripSeparator.cs
- SetterBaseCollection.cs
- ClientSession.cs
- PriorityRange.cs
- GetLedgerRequest.cs
- HostProtectionException.cs
- BuildProvidersCompiler.cs
- Accessible.cs
- RealProxy.cs
- AdRotator.cs
- Matrix3DConverter.cs
- SecuritySessionSecurityTokenAuthenticator.cs
- OdbcParameter.cs
- TitleStyle.cs
- SocketCache.cs
- MaterializeFromAtom.cs
- NumericPagerField.cs
- EditingCoordinator.cs
- ECDiffieHellmanCngPublicKey.cs
- PropertyEntry.cs
- XmlSerializerVersionAttribute.cs
- ProtocolsConfigurationEntry.cs
- MatchingStyle.cs
- ListItemsPage.cs
- LocalValueEnumerator.cs
- SourceInterpreter.cs
- XPathExpr.cs
- PropertyDescriptor.cs
- ImportContext.cs
- ImagingCache.cs
- FormView.cs
- HttpValueCollection.cs
- ColorPalette.cs
- SetterBaseCollection.cs
- PingOptions.cs
- CustomErrorsSection.cs
- RepeaterCommandEventArgs.cs
- WeakReference.cs
- QilInvoke.cs
- LocalizationCodeDomSerializer.cs
- RecommendedAsConfigurableAttribute.cs
- FunctionImportElement.cs
- StringArrayConverter.cs
- DataGridViewTextBoxEditingControl.cs
- Module.cs
- EventLogException.cs
- RoleGroupCollection.cs
- ResXBuildProvider.cs
- UrlPropertyAttribute.cs
- SchemaElement.cs
- CurrencyManager.cs
- TreeNodeSelectionProcessor.cs
- LinqToSqlWrapper.cs
- ColorBlend.cs
- NoClickablePointException.cs
- PaperSource.cs
- ProcessHostFactoryHelper.cs
- VectorAnimationBase.cs
- UniqueEventHelper.cs
- TableLayoutStyle.cs
- QueryOpeningEnumerator.cs
- CdpEqualityComparer.cs
- VisualStyleElement.cs
- MenuItemBindingCollection.cs
- TypefaceMetricsCache.cs
- TabItemWrapperAutomationPeer.cs
- ParallelQuery.cs
- ResourceAttributes.cs
- FormViewAutoFormat.cs
- MemoryMappedView.cs
- StateMachineWorkflowDesigner.cs
- BuildProviderAppliesToAttribute.cs
- XmlObjectSerializerWriteContextComplex.cs
- ClipboardProcessor.cs
- EditingMode.cs
- XmlSchemaComplexContentExtension.cs
- UrlAuthorizationModule.cs
- QilPatternVisitor.cs
- ContentOperations.cs
- SQLDecimalStorage.cs
- ReadOnlyAttribute.cs
- DataControlFieldHeaderCell.cs
- SiteMapProvider.cs
- SoapReflectionImporter.cs
- AdapterDictionary.cs
- TransformerInfoCollection.cs
- TextEditorDragDrop.cs
- BitFlagsGenerator.cs
- SiteMapDataSourceView.cs
- KeyedByTypeCollection.cs