46 lines
1.2 KiB
C#
46 lines
1.2 KiB
C#
using System;
|
|
using System.Collections.Generic;
|
|
using System.Diagnostics;
|
|
using System.Drawing;
|
|
using System.Globalization;
|
|
using System.Linq;
|
|
using System.Text;
|
|
using System.Threading.Tasks;
|
|
using System.Windows.Data;
|
|
using System.Windows.Interop;
|
|
using System.Windows.Media.Imaging;
|
|
using System.Windows;
|
|
using System.Windows.Media;
|
|
|
|
namespace BeWo.Converter
|
|
{
|
|
// Source - https://stackoverflow.com/a/29757845
|
|
// Posted by run2thesun, modified by community. See post 'Timeline' for change history
|
|
// Retrieved 2026-01-30, License - CC BY-SA 3.0
|
|
|
|
public class IconToImageSourceConverter : IValueConverter
|
|
{
|
|
public object Convert(object value, Type targetType, object parameter, CultureInfo culture)
|
|
{
|
|
var icon = value as Icon;
|
|
if (icon == null)
|
|
{
|
|
Trace.TraceWarning("Attempted to convert {0} instead of Icon object in IconToImageSourceConverter", value);
|
|
return null;
|
|
}
|
|
|
|
ImageSource imageSource = Imaging.CreateBitmapSourceFromHIcon(
|
|
icon.Handle,
|
|
Int32Rect.Empty,
|
|
BitmapSizeOptions.FromEmptyOptions());
|
|
return imageSource;
|
|
}
|
|
|
|
public object ConvertBack(object value, Type targetType, object parameter, CultureInfo culture)
|
|
{
|
|
throw new NotImplementedException();
|
|
}
|
|
}
|
|
|
|
}
|