DpiPrescaleThemedImageConverter Класс

Определение

Внимание!

Use Microsoft.VisualStudio.Imaging.CrispImage instead.

Преобразует ImageSource в элемент Image. Если входное изображение IA a переводится в триадный цвет, то для преобразованного изображения используется цвет, сопоставленный с заданным цветом фона. После этого итоговый образ предварительно масштабируется с высоким разрешением до наибольшего масштаба, кратного 100% меньшего масштаба DPI. Этот преобразователь привязывает поведение Семедимажеконвертер и Дпипрескалеимажесаурцеконвертер.

public ref class DpiPrescaleThemedImageConverter : Microsoft::VisualStudio::PlatformUI::MultiValueConverter<System::Windows::Media::ImageSource ^, System::Windows::Media::Color, bool, System::Windows::Controls::Image ^>
[Windows::Foundation::Metadata::WebHostHidden]
class DpiPrescaleThemedImageConverter : Microsoft::VisualStudio::PlatformUI::MultiValueConverter<System::Windows::Media::ImageSource, System::Windows::Media::Color, bool, System::Windows::Controls::Image const &>
public class DpiPrescaleThemedImageConverter : Microsoft.VisualStudio.PlatformUI.MultiValueConverter<System.Windows.Media.ImageSource,System.Windows.Media.Color,bool,System.Windows.Controls.Image>
[System.Obsolete("Use Microsoft.VisualStudio.Imaging.CrispImage instead.")]
public class DpiPrescaleThemedImageConverter : Microsoft.VisualStudio.PlatformUI.MultiValueConverter<System.Windows.Media.ImageSource,System.Windows.Media.Color,bool,System.Windows.Controls.Image>
type DpiPrescaleThemedImageConverter = class
    inherit MultiValueConverter<ImageSource, Color, bool, Image>
[<System.Obsolete("Use Microsoft.VisualStudio.Imaging.CrispImage instead.")>]
type DpiPrescaleThemedImageConverter = class
    inherit MultiValueConverter<ImageSource, Color, bool, Image>
Public Class DpiPrescaleThemedImageConverter
Inherits MultiValueConverter(Of ImageSource, Color, Boolean, Image)
Наследование
Производный
Атрибуты

Комментарии

Общий шаблон использования может выглядеть следующим образом:

<imaging:DpiPrescaleThemedImageConverter x:Key="DpiPrescaleThemedImageConverter" />  
<ControlTemplate x:Key="MyMenuItemTemplate" TargetType="{x:Type MenuItem}">  
<ContentPresenter x:Name="Icon" Width="16" Height="16" ContentSource="Icon" />  
</ControlTemplate>     
<Style x:Key="MyMenuItemStyleKey" TargetType="{x:Type MenuItem}">  
    <Setter Property="Template" Value="{StaticResource MyMenuItemTemplate}" />  
    <Setter Property="Icon">  
        <Setter.Value>  
            <MultiBinding Converter="{StaticResource DpiPrescaleThemedImageConverter}">  
                <Binding Path="Image" />  
                <Binding Path="(imaging:ImageThemingUtilities.ImageBackgroundColor)" RelativeSource="{RelativeSource Self}" />  
                <Binding Source="{x:Static utilities:Boxes.BooleanTrue}" />  
            </MultiBinding>  
        </Setter.Value>  
    </Setter>  
</Style>  

Когда измерения изображения не известны во время компиляции, вместо того чтобы задавать точные свойства ширины и высоты, в FrameworkElement можно указать преобразование макета следующим образом:

<ContentPresenter.LayoutTransform>  
<ScaleTransform ScaleX="{x:Static util:DpiHelper.Default.PreScaledImageLayoutTransformScaleX}" ScaleY="{x:Static util:DpiHelper.Default.PreScaledImageLayoutTransformScaleY}" />  
</ContentPresenter.LayoutTransform>  

Обратите внимание, что при использовании предварительного масштабирования образа необходимо указать либо исходный размер изображения, либо применить к результату преобразование с обратным макетом, чтобы сохранить требуемый исходный размер изображения.

Конструкторы

DpiPrescaleThemedImageConverter()

Инициализирует новый экземпляр Дпипрескалесемедимажеконвертер.

Свойства

DpiHelper

Возвращает Дпихелпер по умолчанию.

Методы

CheckValue<T>(Object[], Int32, String)

Проверяет, values index имеет тип [] T

(Унаследовано от MultiValueConverterBase<TTarget>)
Convert(ImageSource, Color, Boolean, Boolean, Object, CultureInfo)
Convert(ImageSource, Color, Boolean, Object, CultureInfo)
Convert(Object[], Type, Object, CultureInfo)

Только для внутреннего использования в корпорации Майкрософт.

(Унаследовано от MultiValueConverter<T1,T2,T3,TTarget>)
Convert(T1, T2, T3, Object, CultureInfo)

Только для внутреннего использования в корпорации Майкрософт.

(Унаследовано от MultiValueConverter<T1,T2,T3,TTarget>)
ConvertBack(Object, Type[], Object, CultureInfo)

Только для внутреннего использования в корпорации Майкрософт.

(Унаследовано от MultiValueConverter<T1,T2,T3,TTarget>)
ConvertBack(TTarget, T1, T2, T3, Object, CultureInfo)

Только для внутреннего использования в корпорации Майкрософт.

(Унаследовано от MultiValueConverter<T1,T2,T3,TTarget>)
ConvertBackCore(Object, Type[], Object, CultureInfo) (Унаследовано от MultiValueConverter<T1,T2,T3,TTarget>)
ConvertCore(Object[], Type, Object, CultureInfo) (Унаследовано от MultiValueConverter<T1,T2,T3,TTarget>)
MakeConverterFunctionNotDefinedException(String)

Исключение, возникающее, если функция преобразователя не определена.

(Унаследовано от MultiValueConverterBase<TTarget>)
ValidateConvertBackParameters(Object, Type[])

Проверяет параметры, переданные в IMultiValueConverter. ConvertBack

(Унаследовано от MultiValueConverterBase<TTarget>)
ValidateConvertParameters(Object[], Type)

Проверяет параметры, переданные в IMultiValueConverter. Convert

(Унаследовано от MultiValueConverterBase<TTarget>)

Применяется к