2017-04-23 4 views
-2

実行時に、いくつかのアセット(htmlファイルを含む)をインポートし、それをプロジェクトの特定のディレクトリにコピーします。ファイルが表示されない理由は、プロジェクトに含まれているではなく、であることが判明しました。 質問:実行時に新しく追加されたアセットを追加する方法はありますか?実行時にプロジェクトにアセットを含める

編集

ことで、私は資産を意味しない「表示」、彼らが存在しないようなので、プログラムはそれらを参照してくださいしません。しかし、プログラムを閉じてソリューションエクスプローラをリフレッシュした後、破線のファイルがあるため、コピーが正常に終了したことがわかります。ここで

+0

ここで、アセットは表示されません。 詳細はこちらをご覧ください。 –

+0

もちろん、すぐ編集。 – agiro

答えて

-1

は、実行時に決定される資産の一部のXAMLです:

<Image Source="{Binding Converter={StaticResource SomeImageSourceConverter}}" 
     x:Name="SomeImage"/> 

そして、これはコードビハインドである:

SomeImage.DataContext = "pack://application:,,,/.../SomeImagePlaceAtRuntime.png"; 

public class SomeImageSourceConverter : IValueConverter 
{ 
    public object Convert(object value, Type targetType, 
    object parameter_, System.Globalization.CultureInfo culture_) 
    { 
     return (new ImageSourceConverter()).ConvertFromString(value.ToString()); 
    } 

    public object ConvertBack(object value, Type targetType, 
    object parameter, CultureInfo culture) 
    { 
     throw new NotImplementedException(); 
    } 
} 

のでDataContextの値に応じて、それがされます異なる画像を読み込みます。

-1

数週間前に私が解決策で持っていたのと同じような問題のように聞こえると思います。

プログラムが実行しているディレクトリを基準にファイルパスを参照している場合は、表示されていないファイルをすべて選択し、VSの[プロパティ]パネルで[出力ディレクトリにコピー]を[常にコピー] "

出典:Load local HTML file in a C# WebBrowser

関連する問題