2011-08-12 33 views
6

Tôi có một cấu trúc dữ liệu tùy chỉnh, đó là danh sách các mảng chuỗi mà tôi muốn hiển thị trong một DataGrid (ảo) trong WPF. Tất cả các ví dụ về ràng buộc mà tôi đã thấy là đối tượng với các thuộc tính đã biết như đối tượng Colors với thuộc tính Blue và Red.ràng buộc dữ liệu vào Danh sách <string[]> wpf

Dữ liệu của tôi đang được điền từ truy vấn SQL và trả lại số cột không xác định.

Làm cách nào để liên kết với loại cấu trúc này?

(Tôi không muốn sử dụng cái gì đó như ObservableCollection vì lý do hiệu suất: dữ liệu của tôi sẽ là tĩnh vì vậy tôi không cần INotifyPropertyChanged)

+0

Bạn đang sử dụng WPF3 hoặc WPF4? Về cơ bản loại lưới? – sll

+0

Tôi đang sử dụng WPF4 - đó là DataGrid trước đây là một phần của WPF Toolkit – ChandlerPelhams

Trả lời

2

Xem những câu dưới đây: How to populate a WPF grid based on a 2-dimensional array

Nếu bạn chỉ quan tâm đến việc hiển thị dữ liệu 2d của bạn sau đó câu trả lời từ Jobi Joy sẽ hoàn thành công việc bằng cách sử dụng Grid.

Nếu bạn cũng muốn để có thể chỉnh sửa dữ liệu thì bạn có thể sử dụng một điều khiển Tôi tạo ra một thời gian lại cho mục đích này gọi là DataGrid2D mà lớp con DataGrid

Để sử dụng nó, chỉ cần thêm một tham chiếu đến DataGrid2DLibrary.dll , thêm namespace này

xmlns:dg2d="clr-namespace:DataGrid2DLibrary;assembly=DataGrid2DLibrary" 

và sau đó liên kết nó để List<string[]> bạn như thế này

<dg2d:DataGrid2D ItemsSource2D="{Binding ListStringArrayProperty}"/> 
+0

URL tải xuống bị hỏng. Google hiện trả về URL này thay vì: http://www.mediafire.com/?9xrq5obde90b67o –

+0

@Erij J: Tôi vừa thử nó và có vẻ như nó đang hoạt động tốt. Bạn vẫn gặp sự cố với liên kết? Có thể là một vấn đề tạm thời với mediafire. Tôi sẽ chuyển nó đến dropbox thay vì khi tôi có cơ hội –

Các vấn đề liên quan