Code:
/ 4.0 / 4.0 / DEVDIV_TFS / Dev10 / Releases / RTMRel / ndp / cdf / src / NetFx40 / Tools / System.Activities.Presentation / System / Activities / Presentation / Toolbox / ToolboxItemImageConverter.cs / 1484997 / ToolboxItemImageConverter.cs
//------------------------------------------------------------ // Copyright (c) Microsoft Corporation. All rights reserved. //----------------------------------------------------------- namespace System.Activities.Presentation.Toolbox { using System; using System.Drawing; using System.Globalization; using System.Windows; using System.Windows.Data; using System.Windows.Interop; using System.Windows.Media; using System.Windows.Media.Imaging; //This class is responsible for converting 'old' bitmap style, contained //in ToolboxItem objects to WPF compatible ImageSource object [ValueConversion(typeof(Bitmap), typeof(ImageSource))] sealed class ToolboxItemImageConverter : IValueConverter { object IValueConverter.Convert(object value, Type targetType, object parameter, CultureInfo culture) { Bitmap source = value as Bitmap; if (targetType == typeof(ImageSource) && null != source) { IntPtr hBitmap = source.GetHbitmap(); try { BitmapSizeOptions sizeOptions = BitmapSizeOptions.FromEmptyOptions(); return Imaging.CreateBitmapSourceFromHBitmap(hBitmap, IntPtr.Zero, Int32Rect.Empty, sizeOptions); } finally { System.Activities.Presentation.View.Win32Interop.DeleteObject(hBitmap); } } return null; } object IValueConverter.ConvertBack(object value, Type targetType, object parameter, CultureInfo culture) { throw FxTrace.Exception.AsError(new NotSupportedException()); } } } // File provided for Reference Use Only by Microsoft Corporation (c) 2007. //------------------------------------------------------------ // Copyright (c) Microsoft Corporation. All rights reserved. //----------------------------------------------------------- namespace System.Activities.Presentation.Toolbox { using System; using System.Drawing; using System.Globalization; using System.Windows; using System.Windows.Data; using System.Windows.Interop; using System.Windows.Media; using System.Windows.Media.Imaging; //This class is responsible for converting 'old' bitmap style, contained //in ToolboxItem objects to WPF compatible ImageSource object [ValueConversion(typeof(Bitmap), typeof(ImageSource))] sealed class ToolboxItemImageConverter : IValueConverter { object IValueConverter.Convert(object value, Type targetType, object parameter, CultureInfo culture) { Bitmap source = value as Bitmap; if (targetType == typeof(ImageSource) && null != source) { IntPtr hBitmap = source.GetHbitmap(); try { BitmapSizeOptions sizeOptions = BitmapSizeOptions.FromEmptyOptions(); return Imaging.CreateBitmapSourceFromHBitmap(hBitmap, IntPtr.Zero, Int32Rect.Empty, sizeOptions); } finally { System.Activities.Presentation.View.Win32Interop.DeleteObject(hBitmap); } } return null; } object IValueConverter.ConvertBack(object value, Type targetType, object parameter, CultureInfo culture) { throw FxTrace.Exception.AsError(new NotSupportedException()); } } } // 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
- SafePointer.cs
- XmlSortKeyAccumulator.cs
- ExtendedProtectionPolicyElement.cs
- GenericUI.cs
- DeriveBytes.cs
- ISAPIRuntime.cs
- FontFamily.cs
- WindowsGraphicsWrapper.cs
- StorageInfo.cs
- SetterBase.cs
- RequestResponse.cs
- oledbmetadatacolumnnames.cs
- RectangleF.cs
- SynchronizedDispatch.cs
- GenericTypeParameterBuilder.cs
- Int32Storage.cs
- SBCSCodePageEncoding.cs
- DataRowChangeEvent.cs
- XPathNodeIterator.cs
- FontStyle.cs
- keycontainerpermission.cs
- COM2ComponentEditor.cs
- DynamicHyperLink.cs
- MessagePartProtectionMode.cs
- CodeCompiler.cs
- SrgsGrammar.cs
- PassportIdentity.cs
- TextContainer.cs
- FontCollection.cs
- Msec.cs
- ServiceModelSecurityTokenTypes.cs
- HTTPNotFoundHandler.cs
- WorkflowMarkupSerializationManager.cs
- TransactionChannel.cs
- EncoderExceptionFallback.cs
- WindowCollection.cs
- PropertyNames.cs
- GroupBox.cs
- TabPage.cs
- SatelliteContractVersionAttribute.cs
- ObjectDataSourceSelectingEventArgs.cs
- PathFigureCollectionConverter.cs
- UrlRoutingHandler.cs
- MessageBox.cs
- X509CertificateCollection.cs
- NeutralResourcesLanguageAttribute.cs
- uribuilder.cs
- MethodBuilder.cs
- XNodeValidator.cs
- ValidateNames.cs
- DBDataPermission.cs
- ProtocolsConfigurationHandler.cs
- XslCompiledTransform.cs
- XmlSiteMapProvider.cs
- XmlObjectSerializerWriteContext.cs
- ReferencedAssembly.cs
- templategroup.cs
- SqlParameterCollection.cs
- FontEmbeddingManager.cs
- ProgressBar.cs
- ObjectParameterCollection.cs
- CopyNodeSetAction.cs
- XmlSchemaFacet.cs
- PenThreadPool.cs
- StrokeRenderer.cs
- BaseTemplateParser.cs
- TableParaClient.cs
- WebPartEditorOkVerb.cs
- RoleGroupCollection.cs
- EncryptedPackageFilter.cs
- BuilderPropertyEntry.cs
- TransformPattern.cs
- BitmapImage.cs
- HttpStreamXmlDictionaryWriter.cs
- ProfileEventArgs.cs
- XsltConvert.cs
- LoadedOrUnloadedOperation.cs
- TextRangeSerialization.cs
- ActiveXContainer.cs
- WebUtil.cs
- WindowsScroll.cs
- AmbiguousMatchException.cs
- SkipQueryOptionExpression.cs
- CqlParser.cs
- Base64Stream.cs
- OdbcUtils.cs
- List.cs
- ImagingCache.cs
- ListBindingConverter.cs
- DocComment.cs
- ButtonDesigner.cs
- TraversalRequest.cs
- SwitchElementsCollection.cs
- MimeBasePart.cs
- CroppedBitmap.cs
- EpmSourceTree.cs
- TreeViewImageKeyConverter.cs
- LowerCaseStringConverter.cs
- ToolStripItemImageRenderEventArgs.cs
- Message.cs