تقييم الموضوع :
  • 0 أصوات - بمعدل 0
  • 1
  • 2
  • 3
  • 4
  • 5
[سؤال] فحص اذا كان item موجود فى ListView او لا
#1
عندى سؤال استخدام هذا الكود و هو يعم بنجاح ولكن فى حالة التحديث كل دقيقة يتم عمل يحدث للاداء بطريق اخفاء العناصر و اظهارها مره اخرى
اريد ان يتم فحص اذا كان item موجود فى ListView او لا و يتم حذف من الست او اضافة الجديد بدون عمل تحديث للست
ودى صورة للمشكلة ادخل الاداء 
   
كود :
Private Sub BackgroundWorker2_DoWork(ByVal sender As System.Object, ByVal e As System.ComponentModel.DoWorkEventArgs) Handles BackgroundWorker2.DoWork
      Dim con As New System.Data.SqlClient.SqlConnection("Data Source=DESKTOP-SNS2QF4;Initial Catalog=SpicyMessenger;Integrated Security=True")
      If con.State = ConnectionState.Open Then con.Close()
      con.Open()
      Dim cmd As New SqlCommand("SELECT publicroom.id,publicroom.nameroom,useraddnew.id,useraddnew.surnameandname,useraddnew.img FROM publicroom INNER JOIN useraddnew ON useraddnew.id = publicroom.id WHERE publicroom.nameroom =('" & Me.Label1.Text.ToString & "')", con)
      Dim da As SqlDataReader = cmd.ExecuteReader
      Me.ListView1.Items.Clear()
      Form1.ListView1.Columns.Add("surnameandname")
      Form1.ListView1.GridLines = True
      Do While da.Read = True
          Dim friendid As Integer = da("id")
          Dim friendimg As Byte() = da("img")
          Dim namefriend As String = da("surnameandname")
          ImageList1.Images.Add(friendid.ToString, ImgFromByte(friendimg))
          Dim i As New ListViewItem(namefriend, friendid.ToString)
          ImageList1.Images.Add(friendid.ToString, ImgFromByte(friendimg))
          i.SubItems.Add(friendid)
          ListView1.Items.Add(i)
      Loop
      If con.State = ConnectionState.Open Then con.Close()
  End Sub

  Private Sub Timer1_Tick(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Timer1.Tick
      BackgroundWorker2.RunWorkerAsync()
  End Sub
قال تعالى : يَامَعْشَرَ الْجِنِّ وَالإِنسِ إِنْ اسْتَطَعْتُمْ أَنْ تَنفُذُوا مِنْ أَقْطَارِ السَّمَاوَاتِ وَالأَرْضِ فَانفُذُوا لا تَنفُذُونَ إِلاّ بِسُلْطَانٍ
الرد
تم الشكر بواسطة: asemshahen5 , asemshahen5
#2
ما هو الحل شباب؟
قال تعالى : يَامَعْشَرَ الْجِنِّ وَالإِنسِ إِنْ اسْتَطَعْتُمْ أَنْ تَنفُذُوا مِنْ أَقْطَارِ السَّمَاوَاتِ وَالأَرْضِ فَانفُذُوا لا تَنفُذُونَ إِلاّ بِسُلْطَانٍ
الرد
تم الشكر بواسطة: asemshahen5
#3
؟؟ما هو الحل شباب؟
قال تعالى : يَامَعْشَرَ الْجِنِّ وَالإِنسِ إِنْ اسْتَطَعْتُمْ أَنْ تَنفُذُوا مِنْ أَقْطَارِ السَّمَاوَاتِ وَالأَرْضِ فَانفُذُوا لا تَنفُذُونَ إِلاّ بِسُلْطَانٍ
الرد
تم الشكر بواسطة: asemshahen5 , asemshahen5
#4
كود :
   Private Sub BackgroundWorker2_DoWork(ByVal sender As System.Object, ByVal e As System.ComponentModel.DoWorkEventArgs) Handles BackgroundWorker2.DoWork
       Dim da As New SqlDataAdapter("SELECT publicroom.id,publicroom.nameroom,useraddnew.id,useraddnew.surnameandname,useraddnew.img FROM publicroom INNER JOIN useraddnew ON useraddnew.id = publicroom.id WHERE publicroom.nameroom =('" & Me.Label1.Text.ToString & "')", con)
       Dim dt As New DataTable
       da.Fill(dt)
       For Each r As DataRow In dt.Rows
           Dim friendid As Integer = r("id")
           Dim i = ListView1.Items.Cast(Of ListViewItem).Any(Function(x As ListViewItem) x.SubItems(1).Text = friendid)
           If Not i Then
               Dim friendimg As Byte() = r("img")
               Dim namefriend As String = r("surnameandname")
               ImageList1.Images.Add(friendid, ImgFromByte(friendimg))
               Dim itm As New ListViewItem(namefriend, friendid.ToString)
               itm.SubItems.Add(friendid)
               ListView1.Items.Add(itm)
           End If
       Next
       For Each itm As ListViewItem In ListView1.Items
           Dim friendid As Integer = itm.SubItems(1).Text
           Dim a = dt.Rows.Cast(Of DataRow).Any(Function(x As DataRow) x("id") = friendid)
           If Not a Then
               ListView1.Items.Remove(itm)
           End If
       Next
   End Sub

اخبرني بالنتيجة
الرد
تم الشكر بواسطة: alims , asemshahen5
#5
شكرا ليك اخى العزيز يعمل بنجاح بس في حاجة اخير و هي بص حاضرتك في الصور هتلقي في فرق من الشمال بين الصوره و الأداء هل يمكن تكون الصوره في آخر الجانب الشمال ام لا و آسف على الازعاج
قال تعالى : يَامَعْشَرَ الْجِنِّ وَالإِنسِ إِنْ اسْتَطَعْتُمْ أَنْ تَنفُذُوا مِنْ أَقْطَارِ السَّمَاوَاتِ وَالأَرْضِ فَانفُذُوا لا تَنفُذُونَ إِلاّ بِسُلْطَانٍ
الرد
تم الشكر بواسطة: asemshahen5 , asemshahen5
#6
يارب يارب يارب
قال تعالى : يَامَعْشَرَ الْجِنِّ وَالإِنسِ إِنْ اسْتَطَعْتُمْ أَنْ تَنفُذُوا مِنْ أَقْطَارِ السَّمَاوَاتِ وَالأَرْضِ فَانفُذُوا لا تَنفُذُونَ إِلاّ بِسُلْطَانٍ
الرد
تم الشكر بواسطة: asemshahen5



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


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