Bạn hiện đang ngoại tuyến, hãy chờ internet để kết nối lại

Làm thế nào để liên kết một điều khiển DataGrid với một ArrayList của các đối tượng hoặc cấu trúc bằng cách sử dụng Visual Basic 2005 hoặc Visual Basic.NET

QUAN TRỌNG: Bài viết này được dịch bằng phần mềm dịch máy của Microsoft chứ không phải do con người dịch. Microsoft cung cấp các bài viết do con người dịch và cả các bài viết do máy dịch để bạn có thể truy cập vào tất cả các bài viết trong Cơ sở Kiến thức của chúng tôi bằng ngôn ngữ của bạn. Tuy nhiên, bài viết do máy dịch không phải lúc nào cũng hoàn hảo. Loại bài viết này có thể chứa các sai sót về từ vựng, cú pháp hoặc ngữ pháp, giống như một người nước ngoài có thể mắc sai sót khi nói ngôn ngữ của bạn. Microsoft không chịu trách nhiệm về bất kỳ sự thiếu chính xác, sai sót hoặc thiệt hại nào do việc dịch sai nội dung hoặc do hoạt động sử dụng của khách hàng gây ra. Microsoft cũng thường xuyên cập nhật phần mềm dịch máy này.

Nhấp chuột vào đây để xem bản tiếng Anh của bài viết này:316302
Đối với một Microsoft Visual C#.NET Phiên bản của bài viết này, xem 316303.
TÓM TẮT
Bài viết từng bước này mô tả cách để ràng buộc một ArrayList các đối tượng để một DataGrid kiểm soát. Các ví dụ bao gồm một hình thức Microsoft Windows với một DataGrid điều khiển để hiển thị giá trị tài sản đối tượng, và bốn nút lệnh để duyệt các hàng của các DataGrid kiểm soát.

Yêu cầu

Danh sách sau vạch ra được đề nghị phần cứng, phần mềm, cơ sở hạ tầng mạng và gói dịch vụ được yêu cầu:
  • Microsoft Visual Basic 2005 hoặc Microsoft Visual Basic.NET
Bài viết này giả định rằng bạn đã quen thuộc với các chủ đề sau:
  • Visual Basic lập trình khái niệm

Thiết kế các lớp học

Một lớp mà là bị ràng buộc để kiểm soát một phải có tài sản accessors. Bất kỳ tài sản mà là bị ràng buộc phải có Bất động sản tậpBất động sản Get phương pháp. Lớp mẫu được sử dụng trong bài viết này có ba thành viên (duy nhất được hiển thị ở đây.) Một nhà xây dựng parameterized cũng đã được cung cấp, nhưng không phải là một yêu cầu.
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				

Thêm lớp thể hiện cho một ArrayList

Để tạo ra trường hợp và thêm chúng vào các ArrayList, hãy làm theo các bước sau:
  1. Tuyên bố một ArrayList.
  2. Tạo sự kiện về các lớp học, và sau đó thêm các trường hợp cho các 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))				

Liên kết ArrayList với DataGrid

Sau khi các ArrayList đã được dân cư, đặt các DataSource tài sản của các DataGrid kiểm soát để các ArrayList. Các cột trong các DataGrid kiểm soát được dân cư dựa trên các tài sản mà tài sản trong phạm vi accessors tồn tại.
DataGrid1.DataSource = al				

Cung cấp một phương tiện để trình duyệt ArrayList

Bạn có thể sử dụng CurrencyManager duyệt qua các ArrayList. Để thực hiện việc này, kết hợp CurrencyManager với các BindingContext của các điều khiển (trong trường hợp này, các ArrayList).
Private cManager As CurrencyManagercManager = CType(DataGrid1.BindingContext(al), CurrencyManager)				
Các CurrencyManager lớp học có một Vị trí bất động sản mà bạn có thể thao tác để iterate qua các thành viên của các ArrayList. Bằng cách thêm vào, hoặc trừ đi từ giá trị hiện tại của Vị trí, bạn có thể duyệt các hàng của các DataGrid kiểm soát.
'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				

Ví dụ-by-step

  1. Trong trực quan Basic2005 hoặc trong Visual Basic.NET, tạo ra một dự án ứng dụng Windows mới. Form1 được tạo ra theo mặc định.
  2. Trên các Dự án trình đơn, nhấp vào Thêm Class để thêm một lớp học cho dự án.
  3. Thay thế mã trong Class1.vb với những điều sau đây:
    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 PropertyEnd Class					
  4. Đóng cửa sổ mã Class1.vb, và sau đó chuyển sang thiết kế mẫu.
  5. Thêm một DataGrid kiểm soát để Form1. Kích thước các DataGrid kiểm soát để chứa bốn cột và ba hàng.
  6. Thêm bốn Nút điều khiển để Form1, và sau đó sắp xếp các nút theo chiều ngang.
  7. Thay đổi các Văn bản tài sản của Button1 để Tiếp theo.
  8. Thay đổi các Văn bản tài sản của Button2 để Trước đó.
  9. Thay đổi các Văn bản tài sản của Button3 để Đầu tiên.
  10. Thay đổi các Văn bản tài sản của Button4 để Cuối cùng.
  11. Thêm mã sau đây để các Form1 lớp:
    Private cManager As CurrencyManagerPrivate al as New ArrayList()					
  12. Dán đoạn mã sau trong các Form1_Load sự kiện:
    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. Dán mã sau đây sau khi các Form_Load thủ tục:
        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. Xây dựng và chạy các dự án.
  15. Nhấp vào nút lệnh để di chuyển giữa các hàng của các DataGrid kiểm soát. Lưu ý rằng bạn có thể chỉnh sửa các giá trị của các đối tượng nếu bạn muốn.

Sử dụng một cấu trúc thay vì một lớp học

Quy tắc cho các ràng buộc một cấu trúc là tương tự như các quy tắc cho ràng buộc một đối tượng. Bất động sản (có nghĩa là, tài khoản của) accessors được yêu cầu. Một cấu trúc được tạo ra cho mục đích này tương tự như một lớp học.

Liên kết với một ArrayList kết cấu, làm theo các bước sau:
  1. Thay đổi định nghĩa của mô-đun hạng Class1.vb trong ví dụ từ
    Public Class guitar'...End Class					
    đến sau đây:
    Public Structure guitar'...End Structure					
  2. Xây dựng và chạy chương trình ví dụ một lần nữa, và xác minh rằng nó chức năng với một ArrayList các cấu trúc.
THAM KHẢO
Để biết thêm chi tiết, xem chủ đề "Người tiêu dùng của dữ liệu trên Windows Forms" trong Visual Studio.NET trợ giúp trực tuyến.

Cảnh báo: Bài viết này được dịch tự động

Thuộc tính

ID Bài viết: 316302 - Xem lại Lần cuối: 08/27/2011 21:10:00 - Bản sửa đổi: 2.0

Microsoft Visual Basic 2005, Microsoft Visual Basic .NET 2003 Standard Edition, Microsoft Visual Basic .NET 2002 Standard Edition

  • kbvs2005swept kbvs2005applies kbhowtomaster kbmt KB316302 KbMtvi
Phản hồi
mp;t=">