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
- documentsequencetextcontainer.cs
- PropertyTabChangedEvent.cs
- TextContainerHelper.cs
- SqlNodeAnnotation.cs
- XpsResource.cs
- OpacityConverter.cs
- ProfileModule.cs
- ResourcesChangeInfo.cs
- XPathAxisIterator.cs
- XmlSchemaDatatype.cs
- XamlStyleSerializer.cs
- HtmlListAdapter.cs
- StrongTypingException.cs
- RoleBoolean.cs
- CollectionView.cs
- NumberFunctions.cs
- LinqDataSourceDeleteEventArgs.cs
- IncrementalHitTester.cs
- CustomAttribute.cs
- CubicEase.cs
- TransformConverter.cs
- Int64AnimationBase.cs
- StrongBox.cs
- IteratorDescriptor.cs
- PropertyInformation.cs
- GradientBrush.cs
- CompareInfo.cs
- PatternMatchRules.cs
- DiscoveryInnerClientAdhoc11.cs
- VBCodeProvider.cs
- SecurityElement.cs
- XmlQualifiedNameTest.cs
- Control.cs
- TypeExtensionConverter.cs
- BooleanConverter.cs
- TreeViewImageIndexConverter.cs
- CompareInfo.cs
- UrlMappingsSection.cs
- CollectionChangedEventManager.cs
- ToolStripSplitStackLayout.cs
- SplayTreeNode.cs
- WpfPayload.cs
- AmbientLight.cs
- ProfilePropertySettingsCollection.cs
- PathData.cs
- TextRange.cs
- Types.cs
- SynchronousReceiveElement.cs
- InputProcessorProfilesLoader.cs
- StateDesigner.cs
- ElementFactory.cs
- DataTableMappingCollection.cs
- ControlCachePolicy.cs
- RootBuilder.cs
- IISMapPath.cs
- TreeNodeBinding.cs
- DrawingCollection.cs
- WindowsStatusBar.cs
- CssTextWriter.cs
- HttpVersion.cs
- MessageAction.cs
- FormsAuthenticationTicket.cs
- CompiledAction.cs
- SelectionItemPattern.cs
- UseAttributeSetsAction.cs
- MatrixTransform3D.cs
- TreeNodeStyleCollection.cs
- CustomTypeDescriptor.cs
- SynchronizationScope.cs
- Visual.cs
- DoubleAnimationUsingKeyFrames.cs
- HttpServerVarsCollection.cs
- IdentityValidationException.cs
- ValidationSummary.cs
- FormViewDeletedEventArgs.cs
- DockAndAnchorLayout.cs
- CompilerTypeWithParams.cs
- HuffModule.cs
- SoapAttributes.cs
- SqlTypesSchemaImporter.cs
- TransactionScope.cs
- WindowHelperService.cs
- KeyValuePairs.cs
- GenericRootAutomationPeer.cs
- TreeNodeStyleCollection.cs
- HttpDictionary.cs
- prompt.cs
- WebPartChrome.cs
- MappingItemCollection.cs
- CustomAttributeFormatException.cs
- DbProviderFactoriesConfigurationHandler.cs
- CultureSpecificCharacterBufferRange.cs
- FontTypeConverter.cs
- SafeFileMapViewHandle.cs
- CollectionBuilder.cs
- Types.cs
- GACIdentityPermission.cs
- DataControlImageButton.cs
- EntityCommandCompilationException.cs
- ClientData.cs