我有一个问题,我不知道该如何处理,技巧会很实用。
我有一个列表视图,其中充满了台式机文件夹中的TXT文件 我需要它来过滤日期选择器
例如,文件夹中的文件称为10-10-2018.TXT, 11-10-2018.TXT
。
通过日期选择器选择日期后,我只希望显示该文件。
这就是我所拥有的。
Public partial class StartAnalyse : Window
{
string currentitem = string.Empty;
DirectoryInfo dinfo = new DirectoryInfo(@"C:\Users\User\Desktop\folder1");
private void LV1_Loaded(object sender, RoutedEventArgs e)
{
DataFromFolders1();
}
public void DataFromFolders1()
{
LV1.Items.Clear();
if (dinfo.Exists)
{
FileInfo[] Files = dinfo.GetFiles("*.txt");
foreach (FileInfo file in Files)
{
LV1.Items.Add(file.Name);
}
}
private void DatePicker1_SelectedDateChanged(object sender, SelectionChangedEventArgs e)
{
//here i convert the selected date to string
String date = Convert.ToDateTime(datePicker1.Text).ToString("d/MM/yyyy");
// here i need help
}
答案 0 :(得分:0)
您可以在DataFromFolders1方法中添加一个可选参数,并在使用GetFiles()
过滤文件时使用它:
public void DataFromFolders1(string fileName = "*")
{
LV1.Items.Clear();
if (dinfo.Exists)
{
FileInfo[] Files = dinfo.GetFiles($"{fileName}.txt");
foreach (FileInfo file in Files)
{
LV1.Items.Add(file.Name);
}
}
}
在您的DatePicker1_SelectedDateChanged
方法中,您可以使用字符串作为参数来调用它。
private void DatePicker1_SelectedDateChanged(object sender, SelectionChangedEventArgs e)
{
string date = Convert.ToDateTime(datePicker1.Text).ToString("dd-MM-yyyy"); // Note the format change to fit your file names
DataFromFolders1(date);
}