Windowsエクスプローラのプロジェクトフォルダ "画像"に画像をアップロードできますが、プロジェクト "画像"フォルダにはアップロードできません。 (実行中の.exeとVisual Studioが閉じているとき)WPF MVVMコンピュータからプロジェクトフォルダに画像をアップロードし、リソースとしてビルドアクションを設定
イメージをプロジェクトにコピーし、リソースに「ビルドアクション」を設定し、「コピーに出力」を常にコピーに設定します。
なぜですか? 私のプログラム(.exe)が実行されていて(Visual Studioが実行されていない)、メインウィンドウに画像が表示されています。私はボタン "画像をアップロード"を持っています。ユーザーがイメージをアップロードすると、メインウィンドウに表示されなければなりません。画像は綴じで表示されます。 AnyBodyは私を助けることができますか?
メインウィンドウ:(正常に動作します... "Afbeeldingは" "abc.jpg" のようなイメージの名前です)
<Button DataContext="{Binding Source={StaticResource mainViewModelLocator}, Path=MainWindowViewModel}" Command="{Binding AlgorithmActiefCommand}" CommandParameter="{Binding Content, ElementName=ollId}" Background="Transparent" BorderBrush="Transparent" Style="{StaticResource ButtonAsImage}">
<Image Source="{Binding Text, ElementName=image}" MaxHeight="65" MaxWidth="65" />
</Button>
のViewModel:uploadImageボタンが押されたときに "LoadImage" 機能を開始します。
public void LoadImage()
{
//upload image
OpenFileDialog _importAfbeelding = new OpenFileDialog();
_importAfbeelding.Title = "Selecteer een afbeelding";
if (_importAfbeelding.ShowDialog() == true)
{
var _afbeelding = new BitmapImage(new Uri(_importAfbeelding.FileName));
ImportPath = _importAfbeelding.FileName;
string[] _padGesplitst = _importPath.Split('\\');
ImportNaam = _padGesplitst[(_padGesplitst.Length - 1)];
string _destinationFullPath = System.AppDomain.CurrentDomain.BaseDirectory;
DestinationPath = _destinationFullPath.Remove(_destinationFullPath.Length -10) + "images\\OLL\\"+ ImportNaam;
}
try
{
File.Copy(ImportPath, this.DestinationPath, true);
MessageBox.Show("Your images is added with name: " + ImportNaam);
}
catch
{
MessageBox.Show("Unable to open file ");
}
}
は今、私は私の「イメージ」のマップにWindowsエクスプローラでイメージを持っている...しかし、何も私のプロジェクトに示されていません。名前は、MainWindowのバインディングの "Afbeelding"としてデータベースに保存されます。しかし、何も表示されていません。
画像が既にimagesフォルダにあるMainWindow。最後は何のイメージもない。それが私がアップロードボタンで追加したものです。
今ではWindowsエクスプローラにありますが、また、Visual Studioの再起動後にメインウィンドウ
にバインドして示されていません...プロジェクトには表示されません。
イメージはバインディングで表示され、名前は正しくdatに保存されていますabase
私はここで間違っていますか?ありがとうございます
ビルドアクションはビルドアクションです。アプリケーションがコンパイルされた後、*実行時に任意のファイルのビルドアクションを設定することはできません。 –
Visual Studioでプロジェクトにイメージファイルを追加しますか? https://blogs.msdn.microsoft.com/benwilli/2015/05/21/visual-studio-tip-8-adding-existing-files-with-show-all-files/ – kirodge
Paul Abbott、はい、意味があります。 キロッジ、はい、それは私が試しているものですが、私がVisual Studioにいるときはそうではありません! exeが実行されると、Visual Studioが開かれていなくても、 –