Как обновлять / фильтровать таблицы данных при выборе в winbox c# - PullRequest
0 голосов
/ 09 апреля 2020

У меня есть приложение, которое я создаю и работаю над которым, имеет 8 списков, отображающих уникальные значения из файла Excel. После заполнения пользователь может выбрать столько записей из каждого списка, сколько он хочет. Затем я беру эти выборы и создаю для них уникальные файлы Excel, используя закрытый xml.

. Когда я тестировал некоторые новые изменения, я обнаружил проблему, которую раньше не видел. В настоящее время я показываю все уникальные значения, найденные в мастер-файле Excel, это прекрасно работает ... Но я обнаружил, что если я сделаю один выбор в 1 списке, так как другие списки не фильтруются на основе этого выбора, Пользователь может выбрать значения из других, которые не существуют, на основе предыдущего выбора.

Вот некоторые примеры данных, с которыми я работаю:

Основные записи источника данных (данные файла Excel, загружаемые в таблицу данных):

Master Datasource

Вот что пользователь представляет в виде уникальных значений на выбор: (на данный момент выбор не сделан)

Available Filters

Таким образом, основываясь на доступных уникальных значениях, если я ТОЛЬКО выбрал (значение listbox 4 0894), мне нужно отфильтровать Listbox5, listbox6 и listbox7, чтобы отразить эти доступные параметры

enter image description here

Теперь, если я вернулся и выбрал также 0895 в listbox4, то уникальные доступные значения в списках должны отражать то, что доступно вот так:

enter image description here

Простой тест для получения записей на основе выбора был следующим:

DataTable test = ExcelTable.Select("[CCode] in ('0894', '0898')").CopyToDataTable();

Это делает то, что мне нужно, но как я могу реализовать это так, чтобы пользователь выбирал и отменял выбор элементов из списка? списки refre sh и предоставляют только соответствующие те доступные значения ..

Это приложение winforms, снимки экрана - просто представления макета приложения и значений для целей этого вопроса.

...