Groups | Search | Server Info | Keyboard shortcuts | Login | Register [http] [https] [nntp] [nntps]
Groups > it.comp.lang.visual-basic > #19964
| Newsgroups | it.comp.lang.visual-basic |
|---|---|
| Date | 2022-03-30 06:30 -0700 |
| References | <ea4bf7ed-1ad6-4329-aa13-9b29ef4617d0n@googlegroups.com> |
| Message-ID | <5a8dfbb1-b70f-49e5-b930-e1d15aa220c5n@googlegroups.com> (permalink) |
| Subject | Re: Filtro Checked listbox |
| From | Marco75 <marcoporzi75@gmail.com> |
Il giorno mercoledì 30 marzo 2022 alle 10:18:33 UTC+2 Marco75 ha scritto:
> ciao,
> ho una Checkedlistbox popolata tramite una query da SQL Server.
> vorrei inserire un campo ricerca dove, man mano che digito esegue il filtro sugli item restituendomi quelli corrispondenti.
>
> ho provato questo codice, funziona nel senso che mi porta al primo item che trova basato su quanto sto digitando, ma vorrei che andasse a filtrare mostrando solo quello che corrisponde e non portarmi all'item mostrando comunque tutto il resto, è possibile?
>
> questo il codice:
> Private Sub tb_Cerca_TextChanged(sender As Object, e As EventArgs) Handles tb_Cerca.TextChanged
>
> tb_Cerca.Text = UCase(tb_Cerca.Text)
> tb_Cerca.SelectionStart = tb_Cerca.TextLength
>
> CklbSelezionaFlowChart.SelectedItems.Clear()
> If tb_Cerca.Text <> "" Then
> Dim count As Integer = (CklbSelezionaFlowChart.Items.Count - 1)
> Dim words As String
> Dim a As Integer
>
> For a = 0 To count
> words = CklbSelezionaFlowChart.Items.Item(a)
> If words.ToUpper.Contains(tb_Cerca.Text.ToUpper) Then
> CklbSelezionaFlowChart.SelectedItems.Add(CklbSelezionaFlowChart.Items.Item(a))
> CklbSelezionaFlowChart.Sorted = True
> End If
> Next
> End If
>
> grazie
> Marco
ho trovato un codice che fa al caso mio:
If Trim(tb_Cerca.Text) = "" Then Exit Sub
Dim lb As ListBox = New ListBox
Dim s As Integer = 0
For s = 0 To CklbSelezionaFlowChart.Items.Count - 1
If InStr(CklbSelezionaFlowChart.Items(s).ToString, tb_Cerca.Text) Then
lb.Items.Add(CklbSelezionaFlowChart.Items(s))
End If
Next
CklbSelezionaFlowChart.Items.Clear()
For s = 0 To lb.Items.Count - 1
CklbSelezionaFlowChart.Items.Add(lb.Items(s).ToString)
Next
lb.Dispose()
così la listbox mostra solo gli Item a seguito del filtro però se cancello tutto o parte di quanto inserito in TextBox non ripropone gli item che ha filtrato ma devo rieseguire la query..
in attesa di cortese risposta provo a vedere se risolvo
grazie
Marco
Back to it.comp.lang.visual-basic | Previous | Next — Previous in thread | Next in thread | Find similar
Filtro Checked listbox Marco75 <marcoporzi75@gmail.com> - 2022-03-30 01:18 -0700
Re: Filtro Checked listbox Marco75 <marcoporzi75@gmail.com> - 2022-03-30 06:30 -0700
Re: Filtro Checked listbox "Freccia (VegetaSSj)" <NIENTESPAMfreccia_vegetassj@hotmail.invalid> - 2022-04-03 15:53 +0200
Re: Filtro Checked listbox Marco75 <marcoporzi75@gmail.com> - 2022-04-06 03:49 -0700
csiph-web