DpiPrescaleThemedImageConverter 类
定义
重要
一些信息与预发行产品相关,相应产品在发行之前可能会进行重大修改。 对于此处提供的信息,Microsoft 不作任何明示或暗示的担保。
注意
Use the Visual Studio image service and/or Microsoft.VisualStudio.Imaging.CrispImage instead.
将 ImageSource 转换为 Image 元素。 如果输入图像是 BitmapSource,转换后的 BitmapSource 会将其光晕颜色映射到给定背景色,并有条件地呈现为已禁用。 然后,生成的图像将在高 DPI 上预先缩放为小于 DPI 缩放的100% 的最大缩放比例。 此转换器链接 ThemedImageConverter 和 DpiPrescaleImageSourceConverter 的行为。
public ref class DpiPrescaleThemedImageConverter : Microsoft::VisualStudio::Imaging::Dpi::DpiPrescaleThemedImageConverter
[Windows::Foundation::Metadata::WebHostHidden]
class DpiPrescaleThemedImageConverter : Microsoft::VisualStudio::Imaging::Dpi::DpiPrescaleThemedImageConverter
public class DpiPrescaleThemedImageConverter : Microsoft.VisualStudio.Imaging.Dpi.DpiPrescaleThemedImageConverter
[System.Obsolete("Use the Visual Studio image service and/or Microsoft.VisualStudio.Imaging.CrispImage instead.")]
public class DpiPrescaleThemedImageConverter : Microsoft.VisualStudio.Imaging.Dpi.DpiPrescaleThemedImageConverter
type DpiPrescaleThemedImageConverter = class
inherit DpiPrescaleThemedImageConverter
[<System.Obsolete("Use the Visual Studio image service and/or Microsoft.VisualStudio.Imaging.CrispImage instead.")>]
type DpiPrescaleThemedImageConverter = class
inherit DpiPrescaleThemedImageConverter
Public Class DpiPrescaleThemedImageConverter
Inherits DpiPrescaleThemedImageConverter
- 继承
-
DpiPrescaleThemedImageConverter
- 属性
注解
常见的使用模式可能类似于 this://////,其中图像维度在编译时未知,不要指定精确的宽度/高度属性,///可在 FrameworkElement 上指定布局转换(如 this://////)。请注意,使用图像预缩放时,必须指定原始图像大小,或者必须对结果应用反向布局转换,才能保持所需的原始图像大小
<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() |
初始化 DpiPrescaleThemedImageConverter 的新实例。 |
属性
| DpiHelper |
获取 DpiHelper 的实例。 |