2010-01-25 36 views
11

Trong HTML, điều khiển vùng chứa chung là DIV. Nó không làm bất cứ điều gì trên riêng của mình, nhưng nó làm cho một nơi tuyệt vời để treo công cụ đi.WPF: Điều khiển vùng chứa chung là gì?

Tương tự như vậy trong WinForms, điều khiển vùng chứa chung là Bảng điều khiển. Một lần nữa, đây là những gì tôi sẽ sử dụng như một nơi giữ để sau đó tải các điều khiển khác.

Tôi nên sử dụng gì cho WPF?

Trả lời

15

Một số container thường được sử dụng là:

Grid
StackPanel
DockPanel
WrapPanel
Canvas

Xem thêm MSDN Panels Overview.

+0

Để thêm vào điều này, tất cả phụ thuộc vào những gì bạn cần làm với các điều khiển được tải sau này. I E. bố cục họ nên có, vv Trong một trong những trường hợp tôi đã đi với một Grid. Và DockPanel có lẽ không tốt nếu bạn cần tải nhiều điều khiển. – Joey

+0

Trong trường hợp này, tôi muốn càng ít giả định càng tốt. Mọi bố cục phải được xử lý bởi contol đang được tải, do đó, một hạn chế kiểm soát duy nhất có ý nghĩa. –

+0

Không phải là câu trả lời đơn giản mà tôi mong đợi, nhưng liên kết đó là một bài đọc rất hay. –

16

Tôi nghĩ điều gần nhất với những gì bạn đang tìm kiếm là ContentControl. Nó không có layout của riêng nó và không có UI mặc định (trừ khi bạn template nó để làm một hoặc cả hai) nhưng có thể lấy bất kỳ đối tượng nào vì nó là thuộc tính Content (WPF UIElement hoặc cách khác) và cung cấp UI cho đối tượng CLR thông qua DataTemplate được gán cho thuộc tính ContentTemplate của nó. Về mặt đó, nó cung cấp một nơi tốt để chèn nội dung khác (như là div trong HTML). Nó cũng xảy ra là một lớp cơ sở cho nhiều điều khiển tích hợp tiêu chuẩn: Button, ListBoxItem, UserControl, Window.

WPF tấm không làm việc cũng cho placeholders bởi vì họ không thể rập khuôn hoặc có trẻ em thiết lập thông qua các ràng buộc, ngoại trừ trường hợp họ được chứa trong các điều khiển khác có thể xử lý tiêm nội dung ràng buộc, như ItemsControl-ItemsPresenter - ItemsPanel mối quan hệ.

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