2013-01-16 51 views
0

我有這樣圖片在WPF應用程序部署環境下讀取

enter image description here

其實我已經添加了一個名爲「資源」的Visual Studio項目文件夾裏面WPF應用程序的項目目錄,並增加了一些圖像轉換成that.Physically該文件夾在創建以上location.We可以看到,在上述內部的「資源」的文件夾圖像的picture.Default性質在下面給出

BuilAction:Resource 
Copy output Directory:Do not Copy 

我讀叫從該FO「form1.ico」文件的圖像lder連續這樣

<Window 
    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" x:Class="MyApp.FrmMain" 
    Title="MyApp" Height="768" Width="1024" WindowStartupLocation="CenterScreen" x:Name="MainWindow" WindowStyle="None" Loaded="MainWindow_Loaded" ShowInTaskbar="False" ResizeMode="NoResize" WindowState="Maximized" mc:Ignorable="d" Icon="/MyApp;component/Resources/form1.ico" StateChanged="Window_StateChanged"> 

每一個想做工精細,如果我運行使用Visual Studio 2008.But資源文件不斌folder.My問題中創建的應用程序是,如果我從這個位置複製bin文件夾中另一個位置運行的應用程序崩潰(它似乎正在搜索圖像的絕對路徑)bin上創建的EXE這也發生,如果我將資源文件夾移動到另一個位置。我試圖設置圖像屬性像這樣

BuilAction:Content 
Copy output Directory:copy always 

現在它在bin文件夾中創建一個文件夾名稱「Resources」,但它甚至不通過Visual運行應用程序studio.it拋出一個異常說它不能找到特定的圖標。

  • 任何人都可以解釋爲什麼會發生這種情況嗎?
  • 如何在部署應用程序時複製這些資源文件夾?因爲我需要我的應用程序在部署環境中從該文件夾讀取文件。
  • 如果我將屬性設置爲嵌入資源是否有可能用另一個圖像替換 運行時的圖像?

感謝提前:)

回答

1

要引用一個相對路徑,設置您的圖標位置的;

Icon="Resources/form1.ico" 

我不確定爲什麼圖像沒有被複制。

我剛剛試過這個,我的圖標被複制到資源目錄中的調試目錄中。

只是可以肯定,你絕對設置「建設行動」的圖標爲「內容」,並「複製到輸出目錄」爲「一直拷貝」?

此外,再次只是要確定...你是否在項目中包含文件?也就是說,如果您設置了「顯示所有文件」選項,如果您右鍵單擊該圖標,則可以將其包含在項目中。

+0

謝謝......如果我們將Build action設置爲「Content」並將Out目錄設置爲Copy to always,那麼對於所有您的變體的回答爲「是」,除了一個,實際上它會複製bin目錄中的圖像。但它無法讀取圖像。 – Thabo

+0

那麼你會得到一個bin/Resources/form1.ico文件嗎? – PGallagher

+0

是的,只有當我設置內容和複製總是..但爲什麼它無法通過XAML讀取? – Thabo