WPF圖像資源

我主要來自網絡和一點Windows Forms背景。 對於一個新項目,咱們將使用WPF。 WPF應用程序將須要10-20個小圖標和圖像以用於說明目的。 我正在考慮將它們做爲嵌入式資源存儲在程序集中。 那是正確的路嗎? 網絡

如何在XAML中指定圖像控件應從嵌入式資源加載圖像? spa


#1樓

我發現使用圖像,視頻等的最佳作法是: 設計

  • 將文件「構建操做」更改成「內容」 。 確保選中「 複製到構建目錄」
    • 在「解決方案資源管理器」窗口的「右鍵單擊」菜單上找到。
  • 圖像源格式以下:
    • 「 / «YourAssemblyName» ;組件/«YourPath»/«YourImage.png»

<Image Source="/WPFApplication;component/Images/Start.png" />

好處: code

  • 文件未嵌入到程序集中。
    • 資源管理器會在資源過多時(在構建時)引起一些內存溢出問題。
  • 能夠在程序集之間調用。

#2樓

完整描述如何使用資源: WPF應用程序資源,內容和數據文件 component

以及如何引用它們,請閱讀「在WPF中打包URI」。 orm

簡而言之,甚至有從引用/引用程序集中引用資源的方法。 視頻


#3樓

如下工做和要設置的圖像是屬性中的資源: 內存

var bitmapSource = Imaging.CreateBitmapSourceFromHBitmap(MyProject.Properties.Resources.myImage.GetHbitmap(),
                                      IntPtr.Zero,
                                      Int32Rect.Empty,
                                      BitmapSizeOptions.FromEmptyOptions());
    MyButton.Background = new ImageBrush(bitmapSource);
img_username.Source = bitmapSource;

#4樓

是的,這是正確的方法。 資源

您能夠僅使用路徑在資源文件中使用圖像: get

<Image Source="..\Media\Image.png" />

您必須將圖像文件的構建操做設置爲「資源」。


#5樓

若是您正在使用Blend ,要使其變得更加容易而且在獲取Source屬性的正確路徑時沒有任何麻煩,只需將圖像從「項目」面板拖放到設計器上便可。

相關文章
相關標籤/搜索