如何藉由後端程式新增圖檔到image物件上

 

一般我們在WPF專案裡,我們只需要拖拉出Image物件,

然後再指定Source圖檔就好,

但是現在我想藉由後端程式來指定圖檔時要怎麼做?

以下就是簡單藉由後端程式來指定圖檔的作法,

那既然知道可以藉由後端程式控制image物件,那其大小、邊界...等等的物件參數也都可以控制了。

using System;
using System.Windows;
using System.Windows.Media.Imaging;
using System.IO;

namespace 後端如何新增圖檔到image上
{
    /// <summary>
    /// Interaction logic for MainWindow.xaml
    /// </summary>
    public partial class MainWindow : Window
    {
        public MainWindow()
        {
            InitializeComponent();

            var image = new BitmapImage();
            image.BeginInit();
            image.UriSource = new Uri(Directory.GetCurrentDirectory() + "/picture.jpg");
            /*
            如果想要關閉用來建立 BitmapImage 的資料流,
            請將 CacheOption 設定為 BitmapCacheOption.OnLoad。
            預設的 OnDemand 快取選項會保留資料流的存取,
            直到需要該影像且記憶體回收行程進行了清除為止。
            */
            image.CacheOption = BitmapCacheOption.OnLoad;
            image.EndInit();

            imgBackdrop.Source = image;
        }
    }
}

範例檔

 

參考資料:

BitmapImage 類別