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
- X509WindowsSecurityToken.cs
- IPEndPointCollection.cs
- SettingsAttributes.cs
- ZipIOBlockManager.cs
- StateMachineAction.cs
- CellQuery.cs
- CachedBitmap.cs
- EditorAttribute.cs
- ProfileParameter.cs
- MsmqElementBase.cs
- ThreadAttributes.cs
- ColumnResizeAdorner.cs
- EnumValAlphaComparer.cs
- StorageEntityTypeMapping.cs
- Size3DValueSerializer.cs
- MinimizableAttributeTypeConverter.cs
- BrushMappingModeValidation.cs
- ByteStorage.cs
- SchemaCollectionCompiler.cs
- UnicastIPAddressInformationCollection.cs
- DoubleLinkList.cs
- SqlGatherConsumedAliases.cs
- ArrayListCollectionBase.cs
- WebPartPersonalization.cs
- StrokeNode.cs
- NameValueFileSectionHandler.cs
- ProgressBar.cs
- PropertyDescriptorCollection.cs
- SqlConnectionPoolGroupProviderInfo.cs
- ServiceOperationUIEditor.cs
- CompareValidator.cs
- InkCanvasAutomationPeer.cs
- FontConverter.cs
- BadImageFormatException.cs
- PropertyGrid.cs
- SchemaObjectWriter.cs
- LoadGrammarCompletedEventArgs.cs
- _ProxyChain.cs
- _NetRes.cs
- OdbcTransaction.cs
- WebZone.cs
- CustomErrorsSection.cs
- PenThreadWorker.cs
- MailWebEventProvider.cs
- ping.cs
- HideDisabledControlAdapter.cs
- FileRecordSequenceHelper.cs
- PropertyConverter.cs
- CatalogPartChrome.cs
- KeyFrames.cs
- CompositeFontInfo.cs
- OdbcException.cs
- ParsedAttributeCollection.cs
- VisualStyleRenderer.cs
- CrossAppDomainChannel.cs
- ScrollEventArgs.cs
- StateMachineDesignerPaint.cs
- ButtonRenderer.cs
- OletxTransactionManager.cs
- ObjectSpanRewriter.cs
- LinqDataSourceInsertEventArgs.cs
- IntegerValidatorAttribute.cs
- PackageStore.cs
- StorageEntityTypeMapping.cs
- InvalidPrinterException.cs
- DuplicateWaitObjectException.cs
- XmlTypeMapping.cs
- RoutedEventHandlerInfo.cs
- cookiecontainer.cs
- HwndTarget.cs
- __ConsoleStream.cs
- HMACSHA384.cs
- PopupRoot.cs
- SecurityRequiresReviewAttribute.cs
- DrawingAttributesDefaultValueFactory.cs
- MissingMemberException.cs
- AssemblyResourceLoader.cs
- FileUtil.cs
- ModelPropertyDescriptor.cs
- GcSettings.cs
- HierarchicalDataTemplate.cs
- XmlException.cs
- StringUtil.cs
- TypeDependencyAttribute.cs
- NullableBoolConverter.cs
- TextParagraphCache.cs
- RepeatButtonAutomationPeer.cs
- WebPartDescriptionCollection.cs
- CreateUserErrorEventArgs.cs
- XmlSchemaComplexContentExtension.cs
- BitmapEffectRenderDataResource.cs
- WebPartMinimizeVerb.cs
- HideDisabledControlAdapter.cs
- NativeActivityTransactionContext.cs
- HandlerBase.cs
- StyleModeStack.cs
- OutputCacheProfileCollection.cs
- assemblycache.cs
- FlatButtonAppearance.cs
- GreaterThan.cs