Listview заполнен файлами из фильтра папок - PullRequest
0 голосов
/ 10 октября 2018

У меня есть проблема, и я не знаю, как с ней справиться, советы будут очень ценными.

У меня есть список, заполненный TXT-файлами из папки на моем рабочем столе, мне нужно отфильтровать черезdatepicker

Файлы в папках называются, например, 10-10-2018.TXT, 11-10-2018.TXT.

. После того, как я выбрал дату через DatePicker, я хочу, чтобы отображался только этот файл.

Эточто у меня есть.

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
}

1 Ответ

0 голосов
/ 10 октября 2018

Вы можете добавить необязательный параметр в ваш метод 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);
}
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...