UI⑥FrameworkElement族控件Image

Object->DispatcherObject->DependencyObject->Visual->UIElement->FrameworkElement->Image


Image

表示用于显示图像的控件。

Image利用类,您可以加载以下图像类型: .bmp、.gif、.ico、.jpg、.png、. wdp 和 tiff。

显示多帧图像时,仅显示第一帧。 Image 控件不支持多帧图像的动画 。

在加载图像内容之前,控件的 ActualWidth 和 ActualHeight 将报告为零,因为图像内容用于确定控件的最终大小和位置。

对于固定大小的控件, 可以设置 Width 和Height属性。 但是,若要保留媒体的纵横比,请设置 Width 或 Height 属性,但不能同时设置二者。

字段
名称备注权限
DpiChangedEvent显示该图像的屏幕的 DPI 发生更改时使用的 RoutedEventpublic static readonly
ImageFailedEvent标识 ImageFailed 路由事件。public static readonly
SourceProperty标识 Source 依赖项属性。public static readonly
StretchDirectionProperty标识 StretchDirection 依赖项属性。public static readonly
StretchProperty标识 Stretch 依赖项属性。public static readonly
属性
名称备注权限
BaseUri获取或设置 Image 的基本统一资源标识符 (URI)。get; set;
Source获取或设置图像的 ImageSourceget; set;
Stretch获取或设置一个值,该值描述应如何拉伸 Image 以填充目标矩形。get; set;
StretchDirection获取或设置一个值,该值指示如何缩放图像。get; set;
方法
名称备注权限
ArrangeOverride排列图像控件并调整其大小。protected
MeasureOverride更新图像的 DesiredSize。 此方法由父 UIElement 调用,并且第一个布局处理过程。protected
OnCreateAutomationPeer创建并返回此 AutomationPeer 的 Image 对象。protected
OnDpiChanged此图像的 DPI 呈现变更时进行调用。protected
OnRender呈现 Image 的内容。protected
事件
名称备注

DpiChanged

public event System.Windows.DpiChangedEventHandler DpiChanged;

ImageFailed

protected override void OnRender (System.Windows.Media.DrawingContext dc);
接口
名称备注

IUriContext.BaseUri

public event System.Windows.DpiChangedEventHandler DpiChanged;

XAML范例

<Window x:Class="ImageDemo.MainWindow"
        xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
        xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
        xmlns:d="http://schemas.microsoft.com/expression/blend/2008"
        xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006"
        xmlns:local="clr-namespace:ImageDemo"
        mc:Ignorable="d"
        Title="MainWindow" Height="450" Width="800">

    <Image Source="/Img/icon.png"  Stretch="Uniform" StretchDirection="Both"/>

</Window>
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using System.Windows;
using System.Windows.Controls;
using System.Windows.Data;
using System.Windows.Documents;
using System.Windows.Input;
using System.Windows.Media;
using System.Windows.Media.Imaging;
using System.Windows.Navigation;
using System.Windows.Shapes;

namespace ImageDemo
{
    /// <summary>
    /// MainWindow.xaml 的交互逻辑
    /// </summary>
    public partial class MainWindow : Window
    {
        public MainWindow()
        {
            InitializeComponent();
            
        }
    }
}

C#范例

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using System.Windows;
using System.Windows.Controls;
using System.Windows.Data;
using System.Windows.Documents;
using System.Windows.Input;
using System.Windows.Media;
using System.Windows.Media.Imaging;
using System.Windows.Navigation;
using System.Windows.Shapes;

namespace ImageDemo
{
    /// <summary>
    /// MainWindow.xaml 的交互逻辑
    /// </summary>
    public partial class MainWindow : Window
    {
        public MainWindow()
        {
            InitializeComponent();
            Image image = new Image
            {
                //Source =new BitmapImage(new Uri("pack://application:,,,/Img/icon.png", UriKind.Absolute)),
                Source = new BitmapImage(new Uri("Img/icon.png", UriKind.Relative)),
                Stretch = Stretch.Uniform,
                StretchDirection= StretchDirection.Both
            };
            this.Content = image;
        }
    }
}

 

 

 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值