منتدى فيجوال بيسك لكل العرب | منتدى المبرمجين العرب
[VB.NET] كيف يتم البحث فى ليست فيو موجودة فى فورم اخر - نسخة قابلة للطباعة

+- منتدى فيجوال بيسك لكل العرب | منتدى المبرمجين العرب (http://vb4arb.com/vb)
+-- قسم : قسم لغة الفيجوال بيسك VB.NET (http://vb4arb.com/vb/forumdisplay.php?fid=182)
+--- قسم : قسم اسئلة VB.NET (http://vb4arb.com/vb/forumdisplay.php?fid=183)
+--- الموضوع : [VB.NET] كيف يتم البحث فى ليست فيو موجودة فى فورم اخر (/showthread.php?tid=18812)

الصفحات: 1 2


كيف يتم البحث فى ليست فيو موجودة فى فورم اخر - الماجيك مسعد - 15-01-17

vb.net
كيف يتم البحث فى ليست فيو موجودة فى فورم اخر
لدى فنشكن للبحث ويبحث بنجاح فى نفس الفورم ولكن مش شغال عند البحث من فورم اخر

الكود
Public Sub SearchTextInListView(ByVal text As String, ByVal lstSource As ListView, Optional ByVal SubItemsN As Integer = 0)
Static unList As New ListView
Static lastRearch As String = ""
Dim item1 As ListViewItem = Nothing

If lastRearch = text Then
Return
Else
lastRearch = text
End If

Dim Index As Integer = 0
While Index < lstSource.Items.Count
lstSource.Invoke(Sub() item1 = lstSource.Items(Index))

If item1.SubItems(SubItemsN).Text.ToLower().Contains(text.ToLower()) = False Then
Index -= 1
'lstSource.Invoke(Sub() lstSource.Items.Remove(item))
lstSource.Invoke(Sub()
lstSource.BeginUpdate()
lstSource.Items.Remove(item1)
lstSource.EndUpdate()
End Sub)


If unList.Items.Contains(item1) = False Then
unList.Items.Add(item1)
End If
End If
Index += 1
End While

Dim index2 As Integer = 0
Dim cItem As ListViewItem
While index2 < unList.Items.Count
cItem = unList.Items(index2)
If cItem.SubItems(SubItemsN).Text.ToLower().Contains(text.ToLower()) Then
index2 -= 1
unList.Items.Remove(cItem)

'lstSource.Invoke(Sub() lstSource.Items.Add(cItem))
lstSource.Invoke(Sub()
lstSource.BeginUpdate()
lstSource.Items.Add(cItem)
lstSource.EndUpdate()
End Sub)
End If
index2 += 1
End While

End Sub


RE: كيف يتم البحث فى ليست فيو موجودة فى فورم اخر - مساعدة - 15-01-17

السلام عليكم

هذا الفنكشن يطلب بارامترات وهي text وlstSource [واختياري SubItemsN]
فجرب عند استدعاء هذا الفنكشن أن تكتب اسم الفورم قبل اسم اسم الليست فيو للبارامتر lstSource


RE: كيف يتم البحث فى ليست فيو موجودة فى فورم اخر - الماجيك مسعد - 15-01-17

عملت كدا والله يا غالى
ولكن دون جدوى
Dim num As Integer = ComboBox1.SelectedIndex - 1
SearchTextInListView(tgsearch.Text, frm_fb_id_filter.ListView1, num)


RE: كيف يتم البحث فى ليست فيو موجودة فى فورم اخر - مساعدة - 15-01-17

مثل هذا الكود
كود :
SearchTextInListView("abc", Form2.ListView1, 0)

ضع مشروع لإيجاد الكود المناسب

بسبب عدم وجود شرح في أكواد الفنكشن،
ما وظيفة الفنكشن؟


RE: كيف يتم البحث فى ليست فيو موجودة فى فورم اخر - الماجيك مسعد - 15-01-17

كما وضحت فى طلبي ان الفنكشن للبحث فى الليست فيو

السؤال ليس بحاجة لمشروع

+ انى وضعت فنكشن البحث

وضحت المشكلة
كل المطلوب هو كيفية البحث من فورم اخر

+ البحث شغال لو فى نفس الفورم لكن لو فورم اخر مش بيشتغل


RE: كيف يتم البحث فى ليست فيو موجودة فى فورم اخر - مساعدة - 15-01-17

جربته على فورم آخر ويعمل، وجزاك الله خير على ردك.

مساعدتي صدقة لوجه الله تعالى.


RE: كيف يتم البحث فى ليست فيو موجودة فى فورم اخر - الماجيك مسعد - 15-01-17

هل جربت من فورم اخر واشتغل معاك؟

الكود شغال لو بحثت فى نفس الفورم لكن من فورم اخر لا يحدث شئ


RE: كيف يتم البحث فى ليست فيو موجودة فى فورم اخر - مساعدة - 15-01-17

قمت بتجربته على ليست فيو في فورم آخر ونجح.

ملاحظة: لم أجد في عمله فرقاً عن هذا الكود
كود :
Public Sub SearchTextInListView(ByVal text As String, ByVal lstSource As ListView, Optional ByVal SubItemsN As Integer = 0)
    For Each item As ListViewItem In lstSource.Items
        If Not item.SubItems(SubItemsN).Text.ToLower().Contains(text.ToLower()) Then item.Remove()
    Next
End Sub

لهذا طلبت منك مشروع لأعرف كيف قمت باستدعائه، والله لا أريد جزاءً ولا شكورا، وإنما مساعدة صدقة لوجه الله تعالى.


RE: كيف يتم البحث فى ليست فيو موجودة فى فورم اخر - الماجيك مسعد - 15-01-17

ههههه اعذرنى اخى
لم اقصد ما تفهمه

ولكن مشروعى كبير
بحجم 31 ميجا

والنت عندى 512 لذلك صعب ارفع المشروع عشان مشكلة صغيرة

انا خلاص هتجنن وربنا بسبب المشكلة دى


RE: كيف يتم البحث فى ليست فيو موجودة فى فورم اخر - مساعدة - 15-01-17

لتطبيق الفنكشن يجب أن يكون الفورم الأخر ظاهر باستخدم Show مثل هذا الكود
كود :
frm_fb_id_filter.Show()
Dim num As Integer = ComboBox1.SelectedIndex - 1
SearchTextInListView(tgsearch.Text, frm_fb_id_filter.ListView1, num)