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
- QueryCacheEntry.cs
- CollectionChangeEventArgs.cs
- BinaryCommonClasses.cs
- HostSecurityManager.cs
- SortQuery.cs
- DataGridViewCellToolTipTextNeededEventArgs.cs
- TextContainerHelper.cs
- ValidationErrorCollection.cs
- ItemCheckEvent.cs
- DataSourceView.cs
- CryptoKeySecurity.cs
- XmlTextAttribute.cs
- IUnknownConstantAttribute.cs
- ToolStripOverflow.cs
- OrderedDictionary.cs
- XmlBaseWriter.cs
- StickyNote.cs
- DataKey.cs
- LambdaCompiler.ControlFlow.cs
- TraceHandlerErrorFormatter.cs
- BackoffTimeoutHelper.cs
- DataGridViewHeaderCell.cs
- MemoryPressure.cs
- SafeMarshalContext.cs
- DBNull.cs
- CookieProtection.cs
- COM2PictureConverter.cs
- ImageMapEventArgs.cs
- ParsedAttributeCollection.cs
- ProviderUtil.cs
- DataSourceHelper.cs
- OnOperation.cs
- FlowLayout.cs
- FileLogRecordHeader.cs
- ListMarkerSourceInfo.cs
- SspiHelper.cs
- UnsafeNativeMethods.cs
- CreateUserWizard.cs
- GeometryModel3D.cs
- PrintingPermission.cs
- XmlNavigatorFilter.cs
- PersonalizationAdministration.cs
- ConstructorBuilder.cs
- LineSegment.cs
- AspNetSynchronizationContext.cs
- TreeNode.cs
- WebPartConnectionsEventArgs.cs
- OutOfProcStateClientManager.cs
- EventData.cs
- ListViewDataItem.cs
- HttpModuleAction.cs
- EventQueueState.cs
- BulletChrome.cs
- WebPart.cs
- Stack.cs
- PointCollectionConverter.cs
- Collection.cs
- DbResourceAllocator.cs
- XamlBrushSerializer.cs
- SerTrace.cs
- ComponentConverter.cs
- TimeoutHelper.cs
- ActivityDesignerLayoutSerializers.cs
- DSACryptoServiceProvider.cs
- nulltextnavigator.cs
- ListControlConvertEventArgs.cs
- GroupDescription.cs
- SharedPersonalizationStateInfo.cs
- TypeExtensions.cs
- ProviderConnectionPointCollection.cs
- ConditionCollection.cs
- ScrollContentPresenter.cs
- UnsafeNativeMethods.cs
- EventSource.cs
- MetadataCollection.cs
- HelloMessage11.cs
- XmlUrlEditor.cs
- FileVersion.cs
- Trigger.cs
- BindingRestrictions.cs
- HtmlControlPersistable.cs
- XmlSchemaValidator.cs
- Menu.cs
- ImageIndexConverter.cs
- InternalDuplexChannelListener.cs
- UserValidatedEventArgs.cs
- TextPointer.cs
- ScrollBarRenderer.cs
- FixedSOMContainer.cs
- VarRefManager.cs
- CapabilitiesPattern.cs
- ReturnValue.cs
- DefaultShape.cs
- PageRequestManager.cs
- XpsFilter.cs
- ExeContext.cs
- Timer.cs
- RelatedView.cs
- TextEffectCollection.cs
- SqlDataSourceSelectingEventArgs.cs