我有一个 WPF 应用程序,它在从folderbrowserdialog()
. 我有一个数据表和一个FILLER()
在数据网格中显示子文件的函数。当用户单击按钮时,文件被删除。我的问题是,当我删除这些文件时,我的数据网格不会刷新。我试过DataGrid1.Items.Refresh();
了,但我不知道把它放在哪里,它没有奏效。在具有相同代码的 Winforms 中,我没有遇到这个问题。这是我的FILLER()
功能:
private void FILLER()
{
string[] files = Directory.GetFiles(@PathBox.Text);
Table = new DataTable();
DataGrid1.DataContext = null;
for (int i = 0; i < files.Length; i++)
{
if (i == 0)
{
Table.Columns.Add("Name");
Table.Columns.Add("Type");
Table.Columns.Add("Size");
}
FileInfo information = new FileInfo(files[i]);
FileSystemInfo systemInformation = new FileInfo(files[i]);
Row = Table.NewRow();
Row["Name"] = systemInformation.Name;
Row["Type"] = systemInformation.Extension;
Row["Size"] = (information.Length / 1024).ToString();
Table.Rows.Add(Row);
}
if (Table.Rows.Count > 0)
{
DataGrid1.ItemsSource = Table.DefaultView;
}
}
还有我的删除部分:
foreach (string file in files)
{
FileInfo toBeDeleted = new FileInfo(file);
if (toBeDeleted.CreationTime < DateTime.Now.AddMilliseconds(-DayValue))
toBeDeleted.Delete();
}
感谢您的建议。