私はこのようなWPFアプリケーションプロジェクトディレクトリを持っています
実際、Visual Studioプロジェクト内に「Resources」という名前のフォルダーを追加し、それにいくつかの画像を追加しました。実際には、フォルダーは上の場所に作成されました。上の写真で確認できます。「Resource」フォルダー内の画像のデフォルトのプロパティを以下に示します。
BuilAction:Resource
Copy output Directory:Do not Copy
このフォルダから「form1.ico」ファイルという画像をこのように読んでいます
<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を使用してアプリケーションを実行すると、すべての考えがうまく機能しますが、リソースファイルはBinフォルダー内に作成されません。私の問題は、binフォルダーをこの場所から別の場所にコピーして、で作成されたexeを実行することです。 binアプリケーションがクラッシュします(画像の絶対パスを検索しているようです)これは、リソースフォルダを別の場所に移動した場合にも発生します。このように画像のプロパティを設定しようとしました
BuilAction:Content
Copy output Directory:copy always
現在、binフォルダー内にフォルダー名「Resources」を作成しています。ただし、Visual Studioを介してアプリケーションを実行することもできません。例外をスローして、特定のアイコンが見つからないことを示します。
- なぜこれが起こっているのか誰かが説明できますか?
- アプリケーションをデプロイするときにこれらのリソースフォルダーをコピーするにはどうすればよいですか?アプリケーションがデプロイメント環境でそのフォルダーからファイルを読み取る必要があるためです。
- プロパティを埋め込みリソースに設定した場合、実行時に画像を別の画像に置き換えることはできますか?
前もって感謝します:)