تقييم الموضوع :
  • 0 أصوات - بمعدل 0
  • 1
  • 2
  • 3
  • 4
  • 5
اريد نقل بيانات من listview الي اخري
#4
للنقل بدون تكرار
كود الاستاذ just.coder صحيح 100%
واذا كنت تريد نقل اكثر من عامود
نفس الكود مع ذياده بسيطه
PHP كود :
Try
            For 
As Integer 0 To ListView1.Items.Count 1
                Dim bol 
As Boolean True
                
For As Integer 0 To Form2.ListView1.Items.Count 1
                    
If Form2.ListView1.Items(t).SubItems(1).Text ListView1.Items(i).SubItems(1).Text Then
                        bol 
False
                    End 
If
                
Next
                
If bol True Then
                    Dim itm 
As New ListViewItem
                    itm
.Text Form2.ListView1.Items.Count 1
                    itm
.SubItems.Add(ListView1.Items(i).SubItems(1))
                    
itm.SubItems.Add(ListView1.Items(i).SubItems(2))
                    
itm.SubItems.Add(ListView1.Items(i).SubItems(3))
                    
Form2.ListView1.Items.Add(itm)
                
End If
            
Next
            MsgBox
("تم النقل"MsgBoxStyle.Information)
        Catch 
ex As Exception

        End 
Try 

للحفظ فى ال setting

اولا اذهب الى My Project > Settings
فى خانة ال Name اكتب Itemss
وفى خانة ال Type اختار system.collections.specialized.stringcollection

ثم اذهب الى صفحة تحرير الكود تبع الفورم وفى اعلى الصفحه اكتب هذا الكود

PHP كود :
Imports System.Collections.Specialized 

دلوقتى اختار اى حدث تريده و اكتب هذا الكود للحفظ فى ال Settings

للحفظ

PHP كود :
My.Settings.Itemss = New StringCollection()

        
Dim items = New List(Of String)()

        For 
Each item As ListViewItem In Me.ListView1.Items
            Dim subitems 
= New List(Of String)()

            For 
Each subitem As ListViewItem.ListViewSubItem In item.SubItems
                subitems
.Add(subitem.Text)
            
Next

            items
.Add(String.Join("|"subitems))
        
Next

        My
.Settings.Itemss.AddRange(items.ToArray())
        
My.Settings.Save() 

ثم اختار اى حدث تريده لتعبئة الليست فيو بالبيانات المحفوظه فى ال Settings

PHP كود :
Dim items = New ListViewItem(My.Settings.Itemss.Count 1) {}

        
Dim i As Integer 0
        
While items.Length
            items
(i) = New ListViewItem(My.Settings.Itemss(i).Split("|"c))
            
+= 1
        End 
While

        
Me.ListView1.Items.AddRange(items

وهذا لمسح البيانات المحفوظه فى ال Settings

PHP كود :
My.Settings.Itemss.Clear() 


وهذا الكود يمكن ان تحتاجه

لمسح البيانات المتشابهه Remove Duplicates فى اى ليست فيو

PHP كود :
Public Sub RemoveDuplicates()
        
Dim item1 As ListViewItem
        Dim item2 
As ListViewItem
        
For As Integer ListView1.Items.Count 1 To 0 Step -1
            item1 
ListView1.Items(i)
            For 
As Integer 1 To ListView1.Items.Count 1 Step 1

                item2 
ListView1.Items(s)

                If 
item1.SubItems(1).Text item2.SubItems(1).Text Then
                    ListView1
.Items.Remove(item2)
                    Exit For
                
End If
            
Next s
        Next 
(i)
    
End Sub 
"الناس نيام فإذا ماتوا إنتبهوا"
الرد }}}
تم الشكر بواسطة:


الردود في هذا الموضوع
اريد نقل بيانات من listview الي اخري - بواسطة learning.net - 04-04-13, 07:49 AM


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


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