2009-07-22 28 views
8

Tôi biết ListView khá tốt, nhưng không bao giờ xem DataGrid.WPF DataGrid từ bộ công cụ WPF vs ListView - bất kỳ lợi ích nào?

Câu hỏi của tôi rất đơn giản - nếu bạn không cần chỉnh sửa trong danh sách, thì DataGrid có cung cấp bất kỳ lợi ích nào so với ListView không? Ngoài ra, có bất lợi nào khi sử dụng DataGrid (phức tạp hơn, hiệu năng, lỗi, khó tạo kiểu, v.v ...) không?

Trả lời

5

Chế độ xem danh sách là một điều khiển chỉ đọc. Cách sử dụng thông thường là để đồng bộ hóa danh sách với một 'chi tiết xem' bao gồm TextBoxes.

Các DataGrid không thiếu bất cứ điều gì mà các ListView sở hữu, chẳng hạn như nhiều chế độ lựa chọn, phong cách, vv Nó, tuy nhiên, cung cấp hỗ trợ cho một số tính năng trên đầu trang của ListView:

  • In- nơi chỉnh sửa các dữ liệu

  • giao dịch chỉnh sửa

  • Auto-cột hệ

  • Thiết lập của RowDetails

Về cơ bản câu hỏi là - bạn có muốn chỉnh sửa tại chỗ không? Nếu vậy, DataGrid là một lựa chọn hiển nhiên. Nếu không, cả hai đều khá giống nhau.

+1

Tôi đồng ý với câu trả lời nhưng không đồng ý với kết luận. Ngay cả khi bạn không chỉnh sửa tại chỗ, DataGrid là một lựa chọn ưu tiên vì dễ dàng thêm chế độ xem sắp xếp và RowDetails. Vì vậy, lời khuyên của tôi sẽ là - nếu bạn có golumns, bắt đầu với DataGrid và bạn sẽ không phải chuyển đổi sau. –

+1

ListView không thực sự là chỉ đọc. Bạn có thể dễ dàng làm cho mỗi ô trong một ListView có thể chỉnh sửa được bằng cách sử dụng các mẫu thích hợp. – Tarydon

3

DataGrid cho phép người dùng sắp xếp các mục bằng cách nhấp vào tiêu đề cột.

1

Hai lợi thế hơn về DataGrid:

  1. Cột cố định và tiêu đề cột.
  2. Tiêu đề được tạo kiểu dễ dàng hơn trong ListView.
Các vấn đề liên quan