からフォルダーを選択した後、グリッドビューでサブファイルを表示および削除する 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();
}
ご提案いただきありがとうございます。