2010-05-12 20 views
15

Tôi có một ListBox có ItemsPanel tôi đã thay thế bằng một WrapPanel. WrapPanel hiện đang lưu trữ các ListboxItems databound. Mỗi mục có một văn bản có kích thước thay đổi trong đó, cho mỗi mục một chiều rộng khác nhau. Tuy nhiên, tôi muốn chiều rộng là không đổi sao cho tất cả các mục có cùng chiều rộng với mục có văn bản dài nhất. Có thể không?WPF WrapPanel - tất cả các mục phải có cùng một chiều rộng

Trả lời

16

Đặt từng mục vào lưới một hàng, một cột (chiều rộng tự động) và đặt tên cho cột. Đặt Grid.IsSharedSizeScope trên ListBox và tất cả các lưới sẽ có cùng chiều rộng.

+1

+1 điều này chắc chắn hoạt động - chỉ cần thử nó. –

+1

+1. Với điều này, tôi có thể thực hiện bước nhảy cuối cùng bằng cách thay đổi gui của tôi từ một 'HorizontalPanel' bên trong' ScrollViewer', với các mục có kích thước biến thành 'WrapPanel' với tất cả các mục có cùng kích thước. Thực sự tuyệt vời. –

+0

Hiệu ứng thật tuyệt vời ... ngay cả khi nó cảm thấy như một chút hack, nó đánh bại việc kiểm soát tùy chỉnh mới cho crap này ... hehe – Assimilater

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