Как искать и отображать одни и те же элементы или дубликаты элементов в listview VB.NET
Привет,
Нужна помощь, сначала не очень хорошо по-английски,
У меня есть listview, отображающий элементы из текстового файла из назначенного каталога (папки), я хочу, чтобы поле поиска и (TextBox1) и cmdButton (Button1) искали и отображали все элементы, которые я ищу в третьем столбце или идентификационном номере.
ЭКС:
Колонка 1: Дата и время:
Колонка 2: Наименование:
Колонка 3: идентификационный номер:
08-08-2017 06: 06: 00, Джон Лукас, 1010000
08-08-2017 07: 00: 00, Апрель Dun, 1010023
08-08-2017 08: 45: 00, Кевин Элмо, 1010014
08-08-2017 09: 06:00, Джон Лукас, 1010000
08-08-2017 10: 24: 00, Эд Оливия, 1010012
08-08-2017 11: 47:00, Джон Лукас, 1010000
08-08-2017 12:56: 00, Лайза Бен, 1010001
Я хочу отобразить данные (элементы) Джона Лукаса путем поиска идентификационного номера и отображения его в listview (другой listview)
Что я уже пробовал:
-Это код для отображения моих предметов только из текстового файла, я понятия не имею, и я прошу у тебя помощи, ТИА.
Private Sub Form1_Load(sender As Object, e As EventArgs) Handles MyBase.Load, MyBase.DockChanged lvDETAILS.View = View.Details lvDETAILS.Columns.Add("Date/Time:", 220, HorizontalAlignment.Left) lvDETAILS.Columns.Add("Employee Name:", 280, HorizontalAlignment.Left) lvDETAILS.Columns.Add("ID Number:", 120, HorizontalAlignment.Left) lvDETAILS.Columns.Add("Department:", 250, HorizontalAlignment.Left) lvDETAILS.Columns.Add("User Type:", 200, HorizontalAlignment.Left) lvDETAILS.Columns.Add("ESD Check Result:", 200, HorizontalAlignment.Left) Dim File_Name As String = "D:\esdcheck\DET.dll" Dim objReader As New IO.StreamReader(File_Name) Dim newarray(6) As String Dim DateTime As String Dim Name As String Dim IDNum As String Dim Department As String Dim UserType As String Dim ESDResult As String Do While objReader.Peek <> -1 newarray = objReader.ReadLine().Split(",") DateTime = newarray(0) Name = newarray(1) IDNum = newarray(2) Department = newarray(3) UserType = newarray(4) ESDResult = newarray(5) Dim x As Integer = lvDETAILS.Items.Add(New ListViewItem(New String() {DateTime})).Index 'Para sa Listview unang Column depende sa base sa index lvDETAILS.Items.Item(x).SubItems.Add(Name) 'yung 'x' po na yun ay number of index na nakaset per column., ilalagay sa second column depende sa index lvDETAILS.Items.Item(x).SubItems.Add(IDNum) 'sunod sunod lang po ang pag lagay depende sa dami ng column lvDETAILS.Items.Item(x).SubItems.Add(Department) 'yeah lvDETAILS.Items.Item(x).SubItems.Add(UserType) 'yeah lvDETAILS.Items.Item(x).SubItems.Add(ESDResult) 'yeah !!! eto na yung last! End Sub
Ralf Meier
Я бы предложил это :
Если у вас есть ввод в текстовом поле : очистите свой 2-й ListView, повторите свой 1-й ListView и посмотрите, не найдете ли вы в Подэлементе Name совпадение. Если да, то перенесите соответствующие данные во 2-й ListView.