الفريق العربي للبرمجةأرشيف المنتديات · 2000 – 2023
نسخة أرشيفية للقراءة فقط — التسجيل والمشاركة مغلقان، والمحتوى محفوظ كما كان.

أل BindingSource في سطور

مغلق
بدأه فلسطيننا في 21 يناير 2007 · 13 رد · 6,289 مشاهدة · في ADO.NET
مشاركة: واتساب X فيسبوك تيليجرام
#1 صاحب الموضوع

BindingSource هي أداة جديدة ظهرت في .net2

وهي تقدم لنا غرضين وهما ..

الأول : تقوم بريط الأدوات Controls الموجودة على النموذج form مع مصدر البيانات data Source بطريقة غير مباشرة يعني في عندنا dataSet وDataAdapter اوك .......

وهي على جميع طرق التفاعل مع البيانات مثل الاول والتالي والسابق والاخير وعملية الترتيب والفلترة Filter وايضاً تحديث البيانات والألغاء

الثاني : والثاني ممكن أن نقول أنها تتعامل بشكل كامل مع مصدر البيانات عن طريق الطريقة Method وهي Add والخاصية Property وهي DataMember

Add تستخدم لأضافة Item إلى ما List او بالأحرى إلى BindingSource

DataSource : وهي هنا تأخذ Object واحد فقط يعني ممكن أن نقول Table من DataSource او سواء كانت MS Access أو MS SqlServer ولا ننسى طريقة الأتصال تتم بصورة غير مباشرة ..

اما في حالة أردنا ربط BindingSource بأكثر من جدول Table فهناك ما يعرف ب Object View ويجد كلاس قد قرأتها أسمها JoinView وهي من ميكروسوفت مخصصة للربط باكثر من جدول Table ..

وأحب أن أنوه هنا أن الشكر لله وحده ومن ثم للأخ الغملاسي الذي أعطاني أسمها وعن طريق البحث وصلت لها اسأل الله الكريم أن يسدد خطاها ...

وللشرح عنها أليكم هادا الرابط اضغط هنا

يوجد مثال في المرفقات لبيان الطريقة

نأتي الأن إلى أهم الخصائص و الطرق والأحداث الخاصة بهذه الأداة ...

أولا الخصائص Properties

AllowEdit وهي تعطينا قيمة Boolean (أي قيمة تحتمل الصواب والخطأ) توضح لنا أذا هذه العناصر Items قابلة للتعديل أم لا

AllowNew وهي تعطينا قيمة Boolean (أي قيمة تحتمل الصواب والخطأ)

فأن كانت True فهنا يمكن أن نضيف عنصر جديد إلى BindingSource عن طريق الطريقة AddNew والتي سوف يأتي شرحها عم قريب ..

وأذاكانت False فلا أضافة

AllowRemove : وهي تعطينا قيمة Boolean توضح لنا أذا ممكن أن نحذف من List أم لا .

Count : وهي تعطينا قيمة من نوعInteger لكي تعطينا عدد العناصر التي بList .

Current : وهي تعطينا العنصر الحالي ( المؤشر عليه) داخل List ..

Filter : وهي عبارة عن عمل فلترة إلى الصفوف داخل List إليكم هذا المثال ..

BindingSource1.Filter = "ContactTitle='TextBox1.text'"

او كالتالي

BindingSource1.Filter = String.Format("CODE = '(0)'", codeTextBox.Text)

او كالتالي

BindingSource.Filter = "UserName Like  'c%'"

Position : لتحديد موضع المؤشر حالياً يعني على أي عنصر داخل list

Sort : وهي عملية الترتيب أي ترتيب الأعمدة بناءاً على عمود معين داخل List

مثلاً

BindingSource1.Sort = "Country DESC, Address ASC"

SortDirection : وهي خاصة بطريقة الترتيب يعني الاتجاه يعني تصاعديا

Ascending أو تنازلياً Descending ...

الطرق Methods

AddNew : أضافة نصر جديد الى List .

CancelEdit : إلغاء عملية التعديل التي حصلت على أخر عنصر في List .

Clear : مسح جميع العناصر من list .

EndEdit : وهو تحرك المؤشؤ إلى نهاية List .

Find : وهو أيجاد قيمة محددة في DataSource .

مثلا

index = BindingSource1.Find("CustomerID", "RICSU")
BindingSource1.Position = index

أو

If Len(FindTxt) > 0 Then
Me.BindingSource1.Find(DTable.Columns(0).ColumnName, FindTxt)
End If

Insert : وهو أضافة عنصر جديد إلى List ولكن عند موضع معين وطريقة الاضافة

كالتالي

BindingSource1.Insert(index, value)

MoveFirst : وهي تحرك المؤشر Cursor إلى او عنصر في List

MoveNext : وهو للتالي

MovePrevious : للسابق

MoveLast : التحرك للأخير

بالنسبة للحذف ..

ملاحظة :يجب أن تكون الخاصية allowRemove=true

Remove : وهو حذف عنصر من القائمة ..

يعني لازم نمرر العنصر المراد حذفه ..

RemoveAt : وهنا يتم حذف العنصر من القائمة ولكن علينا أن نمرر له index للعنصر الذي نريد حذف

RemoveCurrent : وهو بمعنى حذف العنصر المحدد .. الذي يقف عنده المؤشر

RemoveFilter : وهو حذف الفلتر Filter المرتبط مع BindingSource

Removesort وهو حذف sort الخاص بعملية الترتيب المرتبط ب BindingSource

ويوجد مثال قد أرفقته من قبل هنا

JoinView.zip

تم تعديل هذه المشاركة بواسطة الشهاب الحارق في 28 يوليو 2007 في 10:47

رَبِّ لَا تَذَرْنِي فَرْداً وَأَنتَ خَيْرُ الْوَارِثِينَ

#2

الاخ فلسطيننا

يعطيك الف عافيه على هذا الموضوع

ولا تحرمنا من ابداعاتك

جعلها الله لك في ميزان حسناتك

1145392391.gif
#3

السلام عليكم

لا شكر على واجب أختي الكريمة

المهم أن لا تنسوا فلسطين بصالح دعاوكم

رَبِّ لَا تَذَرْنِي فَرْداً وَأَنتَ خَيْرُ الْوَارِثِينَ

#4

يا أخي فلسطيننا ..

بارك الله فيك ..

وجعلك ممن يبشرون بالقبول ..

ويرون كتابهم باليمين..

وتقر أعينهم بالرسول ..

تم تعديل هذه المشاركة بواسطة yaseralshikh في 22 يناير 2007 في 00:02

1 - سقوط الإنسان ليس فشلاً ، ولكن الفشل أن يبقى حيث سقط .

2 - الفاشلون قسمان : قسم فكر ولم يفعل ، وقسم فعل ولم يفكر .

-------------------------------------------------------

درس في ADO.NET 2005, التعامل مع الجداول المترابطة في ado.net 2005

درس في الإجراءات الفرعية ( العامة )

درس في ADO.NET من الصفر إلى الإحتراف .

#5

جزاك الله خيرا

عن عائشة رضي الله عنها أن النبي صلى الله عليه وسلم قال: إن الله يحب إذا عمل أحدكم عملا أن يتقنه

نعيب زماننا والعيب فينا ... وما لزماننا عيب سوانا

ونهجو ذا الزمان بغير ذنب ... ولو نطق الزمان لنا هجانا

محمد سامر أبو سلو

#6

جميل ، بارك الله فيك،

#7

جزاك الله خيرا

#8

شكرا جزيلا على هذه المعلومات

وجعلها الله في ميزان حسناتك

اللهم لا سهل الا ماجعلته سهلا، وانت تجعل الصعب ان شئت سهلا

83_45a7168be2ddb.jpg

#9

السلام عليكم

-------------

حياكم الله جميعا ...

رَبِّ لَا تَذَرْنِي فَرْداً وَأَنتَ خَيْرُ الْوَارِثِينَ

#10

السلام عليكم

عندي كم استفسار ..

allowremove انا عاملها الdefault عايز لو ضغطنا على delete button يقلبها true ويرجعها مكانها بعد العملية

وايه هو كود ال save وEdit

بال Vb6 كان adodc.recordset.save ()

جزاك الله خير

#11

الله يجزاك ألف خير و يجعل أعمالك تدوم كعمل صالح لك بإذن الله

-----------------------

موضوعك أخي الكريم أفادني جدا في حل مشكلة كانت تواجهني منذ فترة

و الحمد لله تم حلها بالإستعانة بشرحك

و شكرا لك

#12

مشكور على كل ماتقدمه لنا

ahed.gif

--->MSD<---

#13

جزاك الله خيرا ,و لي استفسار , وهو :

فلسطيننا كتب:
أولا الخصائص Properties

AllowEdit وهي تعطينا قيمة Boolean (أي قيمة تحتمل الصواب والخطأ) توضح لنا أذا هذه العناصر Items قابلة للتعديل أم لا

كيف يمكن جعل الخاصية السابقة False ? ? ?

تم تعديل هذه المشاركة بواسطة hid في 26 يوليو 2007 في 23:23

#14

جزاك الله خيرا

هذا الموضوع مغلق.

مواضيع مشابهة