كيفية ربط عنصر تحكم DataGrid ArrayList المنشآت أو الكائنات باستخدام Visual Basic 2005 أو Visual Basic.NET

للحصول على إصدار Microsoft Visual C#.NET من هذه المقالة، راجع 316303 .

ملخص

توضح هذه المقالة خطوة بخطوة كيفية ربط ArrayList الكائنات إلى عنصر تحكم DataGrid . المثال يتكون من نموذج Microsoft Windows مع عنصر تحكم DataGrid لعرض قيم خصائص الكائن، وأربعة أزرار الأوامر لاستعراض الصفوف التحكم DataGrid .

متطلبات

توضح القائمة التالية الأجهزة الموصى بها برامج البنية الأساسية للشبكة وحزم الخدمات المطلوبة:
  • Microsoft Visual Basic 2005 أو Microsoft Visual Basic.NET
تفترض هذه المقالة أنك معتاد على المواضيع التالية:
  • مفاهيم البرمجة Visual Basic

تصميم الفئة

يجب أن يكون فئة ربط عنصر تحكم accessors الخاصية. يجب أن يكون أي خاصية يتم ربط أساليب تعيين الخاصية و الحصول على الملكية . تحتوي فئة نموذج المستخدمة في هذه المقالة ثلاثة أعضاء (واحد فقط يظهر هنا.) كما تم توفير منشئ ذو معلمات، ولكن ليس شرطا.
Public Class guitar    Private m_make As String
Private m_model As String
Private m_year As Short

Public Sub New(ByVal make, ByRef model, ByVal year)
m_make = make
m_model = model
m_year = year
End Sub
Public Property make() As String
Get
Return m_make
End Get
Set(ByVal Value As String)
m_make = Value
End Set
End Property

End Class

إضافة مثيلات الفئة إلى ArrayList


لإنشاء مثيلات وإضافتها إلى ArrayList، اتبع الخطوات التالية:
  1. قم بتعريف ArrayList.
  2. إنشاء مثيلات الفئة ثم قم بإضافة المثيلات إلى ArrayList.
Private al as New Arraylist()
al.Add(New guitar("Gibson", "Les Paul", 1958))
al.Add(New guitar("Fender", "Jazz Bass", 1964))
al.Add(New guitar("Guild", "Bluesbird", 1971))

ربط ArrayList في DataGrid

بعد أن تم ملؤها ArrayList ، تعيين الخاصية DataSource عنصر التحكم DataGrid إلى ArrayList. يتم تعبئة الأعمدة الموجودة في عنصر التحكم DataGrid استناداً إلى الخصائص التي تتوفر لها accessors الخاصية في النطاق.
DataGrid1.DataSource = al

يوفر وسيلة للاستعراض في ArrayList

يمكنك استخدام CurrencyManager لاستعراض ArrayList. للقيام بذلك، إقران CurrencyManager بيندينجكونتيكست عنصر التحكم (في هذه الحالة، ArrayList).
Private cManager As CurrencyManager
cManager = CType(DataGrid1.BindingContext(al), CurrencyManager)

فئة CurrencyManager على خاصية الموضع يمكنك التعامل معها للمرور عبر أعضاء ArrayList. عن طريق إضافة إلى أو طرح من قيمة الموضعالحالي، يمكنك استعراض الصفوف التحكم DataGrid .
'Move forward one element.cManager.Position += 1
'Move back one element.
cManager.Position -= 1
'Move to the beginning.
cManager.Position = 0
'Move to the end.
cManager.Position = al.Count - 1

مثال خطوة بخطوة

  1. في Visual Basic2005 أو في Visual Basic.NET، إنشاء مشروع تطبيق Windows جديدة. يتم إنشاء Form1 افتراضياً.
  2. من القائمة مشروع ، انقر فوق إضافة فئة لإضافة فئة إلى المشروع.
  3. استبدال التعليمات البرمجية في Class1.vb بما يلي:
    Public Class guitar    Private m_make As String
    Private m_model As String
    Private m_year As Short

    Public Sub New(ByVal make, ByRef model, ByVal year)
    m_make = make
    m_model = model
    m_year = year
    End Sub
    Public Property make() As String
    Get
    Return m_make
    End Get
    Set(ByVal Value As String)
    m_make = Value
    End Set
    End Property
    Public Property model() As String
    Get
    Return m_model
    End Get
    Set(ByVal Value As String)
    m_model = Value
    End Set
    End Property
    Public Property year() As Short
    Get
    Return m_year
    End Get
    Set(ByVal Value As Short)
    m_year = Value
    End Set
    End Property
    End Class

  4. إغلاق إطار التعليمات البرمجية Class1.vb ومن ثم التبديل إلى "مصمم النموذج".
  5. إضافة عنصر تحكم DataGrid إلى Form1. تغيير حجم عنصر التحكم DataGrid لاحتواء أربعة أعمدة وصفوف الثلاثة.
  6. إضافة عناصر تحكم الأزرار الأربعة إلى Form1، وترتيب الأزرار أفقياً.
  7. تغيير خاصية Text ل Button1 إلى التالي.
  8. تغيير خاصية Text ل Button2 إلى السابق.
  9. تغيير خاصية نص Button3 أولاً.
  10. تغيير خاصية نص Button4 إلى آخر.
  11. أضف التعليمات البرمجية التالية إلى فئة Form1 :
    Private cManager As CurrencyManagerPrivate al as New ArrayList()

  12. قم بلصق التعليمة البرمجية التالية في الحدث Form1_Load :
    al.Add(New guitar("Gibson", "Les Paul", 1958))al.Add(New guitar("Fender", "Jazz Bass", 1964))
    al.Add(New guitar("Guild", "Bluesbird", 1971))

    cManager = CType(DataGrid1.BindingContext(al), CurrencyManager)

    DataGrid1.DataSource = al

  13. قم بلصق التعليمة البرمجية التالية بعد إجراء Form_Load :
        Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click        cManager.Position += 1
    End Sub

    Private Sub Button2_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button2.Click
    cManager.Position -= 1
    End Sub

    Private Sub Button3_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button3.Click
    cManager.Position = 0
    End Sub

    Private Sub Button4_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button4.Click
    cManager.Position = al.Count - 1
    End Sub

  14. بناء وتشغيل المشروع.
  15. انقر فوق أزرار الأوامر للانتقال بين الصفوف في عنصر تحكم DataGrid . لاحظ أنه يمكنك تحرير قيم الكائنات عند الضرورة.

استخدام بنية بدلاً من فئة

القواعد الخاصة بربط بنية هي نفس القواعد لربط كائن. Accessors الخاصية (أي عضو) مطلوبة. هيكل الذي تم إنشاؤه لهذا الغرض تمثل فئة.


لربط ArrayList بني، اتبع الخطوات التالية:
  1. تغيير تعريف فئة Class1.vb الوحدة النمطية في المثال من
    Public Class guitar'...
    End Class

    بما يلي:
    Public Structure guitar'...
    End Structure

  2. بناء وتشغيل مثال البرنامج مرة أخرى، والتحقق من أنه يعمل مع ArrayList بني.

المراجع

لمزيد من المعلومات، راجع الموضوع "المستهلكين من البيانات في نماذج Windows" في "تعليمات Visual Studio.NET على الإنترنت".
خصائص

رقم الموضوع: 316302 - آخر مراجعة: 19‏/01‏/2017 - المراجعة: 1

تعليقات