我正在使用以下代码在我的wpf应用中显示一些图像:
<Image Source="{Binding Path=TemplateImagePath, Mode=TwoWay}" Grid.Row="3" Grid.Column="2" Width="400" Height="200"/>
Run Code Online (Sandbox Code Playgroud)
并通过浏览某个目录在代码隐藏的构造函数中设置它的绑定属性,下面是代码:
DirectoryInfo Dir = new DirectoryInfo(@"D:/Template");
if (Dir.Exists)
{
if (Dir.GetFiles().Count() > 0)
{
foreach (FileInfo item in Dir.GetFiles())
{
TemplateImagePath = item.FullName;
}
}
}
Run Code Online (Sandbox Code Playgroud)
但是如果用户上传了一些其他图像,那么我需要删除这个旧图像,这是我按照以下方式进行并将图像绑定设置为null:
DirectoryInfo Dir = new DirectoryInfo(@"D:/Template");
if (Dir.Exists)
{
if (Dir.GetFiles().Count() > 0)
{
foreach (FileInfo item in Dir.GetFiles())
{
TemplateImagePath= null;
File.Delete(item.FullName);
}
}
}
Run Code Online (Sandbox Code Playgroud)
但我得到的异常是无法删除某些其他进程使用的文件.我该如何删除它?