تقييم الموضوع :
  • 0 أصوات - بمعدل 0
  • 1
  • 2
  • 3
  • 4
  • 5
بحث داخل listview
#1
Sub load_Glass()
        'ListView1.Columns.Clear()
        ListView1.Items.Clear()
        ListView1.MultiSelect = False
        ListView1.FullRowSelect = True
        ListView1.GridLines = True
        ListView1.Font = New Font("Times New Roman", 10, FontStyle.Regular)
        ListView1.Columns.Clear()
        ListView1.Columns.Add("كود الزجاج", 150, HorizontalAlignment.Center)
        ListView1.Columns.Add("الوصف", 250, HorizontalAlignment.Center)
        ListView1.Columns.Add("الثمك", 100, HorizontalAlignment.Center)
        ListView1.Columns.Add("الفئة", 100, HorizontalAlignment.Center)
        ListView1.View = View.Details
        ListView1.GridLines = True
        ListView1.FullRowSelect = True
        ListView1.ShowGroups = True
        SelectAll_stock_in_tbl_Glass()
        Dim myrow As DataRow
        For Each myrow In dt_stock_in_tbl_Glass.Rows
            ListView1.Items.Add(myrow.Item(1).ToString, 4)
            ListView1.Items(ListView1.Items.Count - 1).SubItems.Add(myrow.Item(3))
            ListView1.Items(ListView1.Items.Count - 1).SubItems.Add(myrow.Item(9))
            ListView1.Items(ListView1.Items.Count - 1).SubItems.Add(myrow.Item(2))

            'ListView1.Text = ImageList1.Images.Count.ToString
        Next

    End Sub
    Public dt_stock_in_tbl_Glass As New DataTable
    Public Sub SelectAll_stock_in_tbl_Glass()

        Dim da As New SqlDataAdapter
        dt_stock_in_tbl_Glass.Clear()
        da = New SqlDataAdapter("select * from tbl_Materials where Ref= '" & TextBox3.Text & "'", Con)
        da.Fill(dt_stock_in_tbl_Glass)
    End Sub
هذا كود تحميل من جدول الى عرض listview
يوجد textbox اريد ان ابحث بداخلة عن خانة معينة عند الحدث textchanged
الرد }}}
تم الشكر بواسطة: جيولوجي مبتدئ
#2
(04-08-22, 11:28 AM)Lathe1 كتب : Sub load_Glass()
        'ListView1.Columns.Clear()
        ListView1.Items.Clear()
        ListView1.MultiSelect = False
        ListView1.FullRowSelect = True
        ListView1.GridLines = True
        ListView1.Font = New Font("Times New Roman", 10, FontStyle.Regular)
        ListView1.Columns.Clear()
        ListView1.Columns.Add("كود الزجاج", 150, HorizontalAlignment.Center)
        ListView1.Columns.Add("الوصف", 250, HorizontalAlignment.Center)
        ListView1.Columns.Add("الثمك", 100, HorizontalAlignment.Center)
        ListView1.Columns.Add("الفئة", 100, HorizontalAlignment.Center)
        ListView1.View = View.Details
        ListView1.GridLines = True
        ListView1.FullRowSelect = True
        ListView1.ShowGroups = True
        SelectAll_stock_in_tbl_Glass()
        Dim myrow As DataRow
        For Each myrow In dt_stock_in_tbl_Glass.Rows
            ListView1.Items.Add(myrow.Item(1).ToString, 4)
            ListView1.Items(ListView1.Items.Count - 1).SubItems.Add(myrow.Item(3))
            ListView1.Items(ListView1.Items.Count - 1).SubItems.Add(myrow.Item(9))
            ListView1.Items(ListView1.Items.Count - 1).SubItems.Add(myrow.Item(2))

            'ListView1.Text = ImageList1.Images.Count.ToString
        Next

    End Sub
    Public dt_stock_in_tbl_Glass As New DataTable
    Public Sub SelectAll_stock_in_tbl_Glass()

        Dim da As New SqlDataAdapter
        dt_stock_in_tbl_Glass.Clear()
        da = New SqlDataAdapter("select * from tbl_Materials where Ref= '" & TextBox3.Text & "'", Con)
        da.Fill(dt_stock_in_tbl_Glass)
    End Sub
هذا كود تحميل من جدول الى عرض listview
يوجد textbox اريد ان ابحث بداخلة عن خانة معينة عند الحدث textchanged
جرب ما يلي
PHP كود :
Private SrchParameter As String ""
 
   Private NxtStrtRow As Integer 0
    Private Sub ListView1_KeyDown
(sender As ObjectAs KeyEventArgsHandles ListView1.KeyDown
        If e
.KeyCode Keys.F3 Then
            SearchListView
()
 
       End If
 
   End Sub
    Private Sub SearchListView
()
 
       ' selects the row containing data matching the text parameter
        ' 
sets NxtStrtRow (a form level variablevalue for "find next match" scenario (press F3 key)
 
       If ListView1.Items.Count 0 Then
            If SrchParameter 
<> "" Then
                Dim thisRow 
As Integer = -1
                For x 
As Integer NxtStrtRow To ListView1.Items.Count 1          ' each row
                    For y As Integer = 0 To ListView1.Columns.Count - 1             ' 
each column  
                        If InStr
(1ListView1.Items(x).SubItems(y).Text.ToLowerSrchParameter.ToLower) > 0 Then
                            thisRow 
x
                            NxtStrtRow 
1
                            Exit 
For
 
                       End If
 
                   Next
                    If thisRow 
> -1 Then Exit For
 
               Next
                If thisRow 
= -1 Then
                    MsgBox
("Not found.")
 
                   NxtStrtRow 0
                    TextBox1
.SelectAll()
 
                   TextBox1.Select()
 
               Else
                    
' select the row, ensure its visible and set focus into the listview
                    ListView1.Items(thisRow).Selected = True
                    ListView1.Items(thisRow).EnsureVisible()
                    ListView1.Select()
                End If
            End If
        End If
    End Sub
    Private Sub TextBox1_TextChanged(sender As Object, e As EventArgs) Handles TextBox1.TextChanged
        If Not String.IsNullOrWhiteSpace(TextBox1.Text) Then
            SrchParameter = TextBox1.Text
            NxtStrtRow = 0
            SearchListView()
        End If
    End Sub 
الرد }}}
تم الشكر بواسطة: جيولوجي مبتدئ
#3
قم باستخدام هذا الكود فانه يقوم بتحديد كل ما يتشابه مع بدايه أي عنصر من القائمة 
وكلما أضفت أحرف أكثر ضاق نطاق التحديد ..:
كود :
   Private Sub SearchWord(strWord As String)
       If ListView1.Items.Count <= 0 Then Exit Sub
       If Trim(strWord) = "" Then
           For i = 0 To ListView1.Items.Count - 1
               ListView1.Items(i).Selected = False
           Next
           Exit Sub
       End If

       For i = 0 To ListView1.Items.Count - 1
           If LCase(strWord) = LCase(Mid(ListView1.Items.Item(i).Text, 1, Len(strWord))) Then
               ListView1.Items(i).Selected = True
           Else
               ListView1.Items(i).Selected = False
           End If
       Next

   End Sub

   Private Sub TextBox1_TextChanged(sender As Object, e As EventArgs) Handles TextBox1.TextChanged
       SearchWord(TextBox1.Text)
   End Sub


أو استخدم هذا الكود للبحث عن أي عنصر يشابه بجزء منه ما تبحث عنه حتى لو لم يكن من البدايه ويحدده
وكلما أضفت أحرف أكثر ضاق نطاق التحديد ..:
كود :
   Private Sub SearchWord2(strWord As String)
       If ListView1.Items.Count <= 0 Then Exit Sub
       If Trim(strWord) = "" Then
           For i = 0 To ListView1.Items.Count - 1
               ListView1.Items(i).Selected = False
           Next
           Exit Sub
       End If

       For i = 0 To ListView1.Items.Count - 1
           For j = 1 To Len(ListView1.Items.Item(i).Text)
               If LCase(strWord) = LCase(Mid(ListView1.Items.Item(i).Text, j, Len(strWord))) Then
                   ListView1.Items(i).Selected = True
                   Exit For
               Else
                   ListView1.Items(i).Selected = False
               End If
           Next


       Next

   End Sub
   Private Sub TextBox1_TextChanged(sender As Object, e As EventArgs) Handles TextBox1.TextChanged
       SearchWord2(TextBox1.Text)
   End Sub
قال صلى الله عليه وسلم: 
«كلمتان خفيفتان على اللسان 
ثقيلتان في الميزان،حبيبتان إلى الرحمن: 
سبحان الله وبحمده، سبحان الله العظيم».
الرد }}}
#4
(04-08-22, 12:29 PM)asmarsou كتب :
(04-08-22, 11:28 AM)Lathe1 كتب : Sub load_Glass()
        'ListView1.Columns.Clear()
        ListView1.Items.Clear()
        ListView1.MultiSelect = False
        ListView1.FullRowSelect = True
        ListView1.GridLines = True
        ListView1.Font = New Font("Times New Roman", 10, FontStyle.Regular)
        ListView1.Columns.Clear()
        ListView1.Columns.Add("كود الزجاج", 150, HorizontalAlignment.Center)
        ListView1.Columns.Add("الوصف", 250, HorizontalAlignment.Center)
        ListView1.Columns.Add("الثمك", 100, HorizontalAlignment.Center)
        ListView1.Columns.Add("الفئة", 100, HorizontalAlignment.Center)
        ListView1.View = View.Details
        ListView1.GridLines = True
        ListView1.FullRowSelect = True
        ListView1.ShowGroups = True
        SelectAll_stock_in_tbl_Glass()
        Dim myrow As DataRow
        For Each myrow In dt_stock_in_tbl_Glass.Rows
            ListView1.Items.Add(myrow.Item(1).ToString, 4)
            ListView1.Items(ListView1.Items.Count - 1).SubItems.Add(myrow.Item(3))
            ListView1.Items(ListView1.Items.Count - 1).SubItems.Add(myrow.Item(9))
            ListView1.Items(ListView1.Items.Count - 1).SubItems.Add(myrow.Item(2))

            'ListView1.Text = ImageList1.Images.Count.ToString
        Next

    End Sub
    Public dt_stock_in_tbl_Glass As New DataTable
    Public Sub SelectAll_stock_in_tbl_Glass()

        Dim da As New SqlDataAdapter
        dt_stock_in_tbl_Glass.Clear()
        da = New SqlDataAdapter("select * from tbl_Materials where Ref= '" & TextBox3.Text & "'", Con)
        da.Fill(dt_stock_in_tbl_Glass)
    End Sub
هذا كود تحميل من جدول الى عرض listview
يوجد textbox اريد ان ابحث بداخلة عن خانة معينة عند الحدث textchanged
جرب ما يلي
PHP كود :
Private SrchParameter As String ""
 
   Private NxtStrtRow As Integer 0
    Private Sub ListView1_KeyDown
(sender As ObjectAs KeyEventArgsHandles ListView1.KeyDown
        If e
.KeyCode Keys.F3 Then
            SearchListView
()
 
       End If
 
   End Sub
    Private Sub SearchListView
()
 
       ' selects the row containing data matching the text parameter
        ' 
sets NxtStrtRow (a form level variablevalue for "find next match" scenario (press F3 key)
 
       If ListView1.Items.Count 0 Then
            If SrchParameter 
<> "" Then
                Dim thisRow 
As Integer = -1
                For x 
As Integer NxtStrtRow To ListView1.Items.Count 1          ' each row
                    For y As Integer = 0 To ListView1.Columns.Count - 1             ' 
each column  
                        If InStr
(1ListView1.Items(x).SubItems(y).Text.ToLowerSrchParameter.ToLower) > 0 Then
                            thisRow 
x
                            NxtStrtRow 
1
                            Exit 
For
 
                       End If
 
                   Next
                    If thisRow 
> -1 Then Exit For
 
               Next
                If thisRow 
= -1 Then
                    MsgBox
("Not found.")
 
                   NxtStrtRow 0
                    TextBox1
.SelectAll()
 
                   TextBox1.Select()
 
               Else
                    
' select the row, ensure its visible and set focus into the listview
                    ListView1.Items(thisRow).Selected = True
                    ListView1.Items(thisRow).EnsureVisible()
                    ListView1.Select()
                End If
            End If
        End If
    End Sub
    Private Sub TextBox1_TextChanged(sender As Object, e As EventArgs) Handles TextBox1.TextChanged
        If Not String.IsNullOrWhiteSpace(TextBox1.Text) Then
            SrchParameter = TextBox1.Text
            NxtStrtRow = 0
            SearchListView()
        End If
    End Sub 

الكود لا يعمل
الرد }}}
تم الشكر بواسطة:


المواضيع المحتمل أن تكون متشابهة .
الموضوع : الكاتب الردود : المشاهدات : آخر رد
  [سؤال] طريقة توسيط النص داخل اداة comboBox سمير1404 7 3,863 24-08-25, 01:01 PM
آخر رد: أبو خالد الشكري
  [VB.NET] عكس العرض على ListView aminesori 3 392 25-11-24, 12:42 AM
آخر رد: aminesori
  استدعاء من جدولين داخل اداه FlowLayoutPanel برجاء الافادة للضرورة جداً modymody300894 7 642 15-11-24, 11:02 AM
آخر رد: modymody300894
  كتابه عدد معين من الارقام داخل تيكست بوكس modymody300894 3 561 07-11-24, 09:15 PM
آخر رد: modymody300894
  ترتيب شجره الحسابات داخل الجريد فيو modymody300894 2 412 31-10-24, 12:27 PM
آخر رد: modymody300894
  [VB.NET] القراءة من ملف txt واضافته في Listview aminesori 4 538 19-10-24, 03:53 PM
آخر رد: salamandal
Exclamation [VB.NET] ممكن عمل كود لحفظ المكتوب داخل اداة TextBox الورد الصناعي 9 812 17-10-24, 11:43 PM
آخر رد: salamandal
  ارجو المساعدة في كود مقارنة عامود داخل الداتا جريد فيو alachk 11 1,115 11-08-24, 11:44 AM
آخر رد: alachk
  كيف اقوم بتحديث بيانات داخل Datagrid عبر Button moh61 5 478 28-06-24, 12:03 AM
آخر رد: Zuhare
  اعاني من بطئ بتحميل البيانات داخل الداتا جيرد يوجد لدي اكثر من 100 الف صف RADOS 1 585 11-06-24, 07:42 PM
آخر رد: غزة العزة

التنقل السريع :


يقوم بقرائة الموضوع: