تقييم الموضوع :
  • 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 

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


المواضيع المحتمل أن تكون متشابهة .
الموضوع : الكاتب الردود : المشاهدات : آخر رد
  حل مشكلة فى listview malekmohamed155 1 217 19-01-24, 06:19 PM
آخر رد: malekmohamed155
  [سؤال] كيفية انشاء فورم داخل مشروعى عاصم النجار 2 314 05-01-24, 12:36 AM
آخر رد: HALIM ELEULMA
  حماية عمود داخل ورقة الاكسل العيدروس 3 195 05-01-24, 12:21 AM
آخر رد: HALIM ELEULMA
  هل الداتا قراد فيو تسمح بتعدد الاسطر داخل الخلية عند جلب بيانات نصية طويله من قاعدة ب khalidalwdi 3 468 10-11-23, 11:08 AM
آخر رد: khalidalwdi
  يوجد مشكلة عند تحميل البيانات فى كمبوبوكس داخل داتا جريد new_programer 2 475 17-10-23, 06:51 PM
آخر رد: new_programer
  اريد اضافة متغيراخر داخل Listbox1 احتاج تعديل بسيط moh61 0 353 05-08-23, 02:29 PM
آخر رد: moh61
  اريد البحث عن ID داخل ListView من قاعدة بيانات لكل صنف معين moh61 6 704 26-07-23, 05:47 AM
آخر رد: Taha Okla
  اريد تغير حجم ال Panel عند التفيذ من داخل الكود moh61 2 408 23-07-23, 12:22 AM
آخر رد: أبووسم
  مساعدة كتابة التاريخ داخل داتا جريد فيو كريم عبودي 2 531 22-06-23, 12:28 AM
آخر رد: كريم عبودي
  يرجي التعديل على المثال - تعبءة الكمبوبوكس داخل الجريد بانواع الوحدات new_programer 3 806 14-04-23, 05:31 PM
آخر رد: new_programer

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


يقوم بقرائة الموضوع: بالاضافة الى ( 1 ) ضيف كريم