تقييم الموضوع :
  • 0 أصوات - بمعدل 0
  • 1
  • 2
  • 3
  • 4
  • 5
[كود] أبسط طريقة للبحث في الــDataTable
#1
بسم الله الرحمن الرحيم
السلام عليكم ورحمة الله وبركاته
في نقاش في احدى مواضيع المنتدى لاول مرة افكر كيف ممكن ان اصل او ان اعرف الموضع الذي فيه نتيجة البحث في الـDataTable
سابقا كنت استخدم جملة For هكذا
PHP كود :
for as integer=0 to dt.rows.count-1
dim t 
as string=dt(i)(عمود الاسماء او المراد البحث ضمنه)
if 
t=any thing to search for
bindingcontext(dt).position=i
exit for
next 
بصراحة كنت حاس من زمان  انه لابد من وجود طريقة احسن من ذلك.
والان مع الكود الافضل .
الدالة:
PHP كود :
Private Function Search(ByVal t As String) As Integer
        Dim sql 
As String ""
 
       If IsNumeric(tThen
            sql 
"tid=" Val(t) & ""
 
       ElseIf IsDate(tThen
            sql 
"dob ='#" CDate(t).ToShortDateString "#'"
 
       Else
            sql 
"tname='" "'"
 
       End If
 
       If dt.Select(sql).Count 0 Then
            Dim i 
As DataRow
            i 
dt.Select(sql).Single
            Return dt
.Rows.IndexOf(i)
 
       Else
            Return Nothing
        End 
If
 
   End Function 
طبعا لو لم يحصل على نتيجة سيعيد nothing وهو 0  وهو اول موضع بالصفوف.
طريقة استخدامها كالتالي:
PHP كود :
       Dim s As String InputBox("أكتب ماتريد البحث عنه")
 
       BindingContext(dt).Position Search(s)
 
       pos() 
كما ترى يمكن البحث في اي نوع رقم نص تاريخ.
الاجراء pos اضافي.
و كل عام و انتم بخير.

على فكرة هذه الدالة تناسب اذا عملت Binding للادوات ومن غيرها لن تحصل على نتيجة.
اساس الفكرة هو الانتقال لموضع النتيجة.
اللهم إني أعوذ بك من غلبة الدين وغلبة العدو، اللهم إني أعوذ بك من جهد البلاء ومن درك الشقاء ومن سوء القضاء ومن شماتة الأعداء
اللهم اغفر لي خطيئتي وجهلي، وإسرافي في أمري وما أنت أعلم به مني، اللهم اغفر لي ما قدمت وما أخرت، وما أسررت وما أعلنت وما أنت أعلم به مني، أنت المقدم وأنت المؤخر وأنت على كل شيء قدير
الرد }}}


الردود في هذا الموضوع
أبسط طريقة للبحث في الــDataTable - بواسطة سعود - 12-08-19, 03:12 AM


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


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