Tôi có một ứng dụng hiển thị các bảng xếp hạng giải đấu cho các giải đấu thể thao. Những bảng này về cơ bản là lưới với các cột khác nhau đại diện cho số liệu thống kê cho mỗi đội như trận đấu, chiến thắng, thua, bàn thắng và ghi bàn vv. Như vậy, bảng xếp hạng có một thuộc tính thú vị: Đối với một cuộc thi nhất định, chúng tôi luôn có cùng số tiền các hàng (đại diện cho các đội). Kể từ khi điều khiển WPF là vô nghĩa, tôi có thể có thể sử dụng một ListBox, một ListView, một ItemsControl trực tiếp, hoặc thậm chí là một DataGrid. Không nên quan trọng lắm.Thay đổi kích thước phông chữ trong danh sách WPF hoặc lưới để sử dụng không gian đúng cách
Tuy nhiên, tôi muốn một cái gì đó mà tôi chưa thể đạt được: Do kích thước bảng (trong thực tế, kích thước của cửa sổ), TẤT CẢ các đội sẽ được hiển thị mọi lúc (không có cuộn dọc), tất cả cột thống kê (như được chọn bởi người dùng) sẽ được hiển thị và kích thước phông chữ sẽ phản ánh điều này sao cho nó lớn nhất có thể mà không có cột nào trở nên quá lớn để nội dung phù hợp.
Tôi có thể dễ dàng sử dụng UniformGrid để đạt được phần không cuộn dọc. Tuy nhiên, việc điều chỉnh kích thước phông chữ dường như không dễ dàng như vậy. Có tất nhiên là ViewBox, cho phép nội dung của mỗi ô trong bảng có kích thước riêng lẻ càng lớn càng tốt, nhưng điều này có thể dẫn đến sự xấu xí khi bạn kết thúc với một loạt các ô có nhiều thay đổi kích cỡ.
Tôi không mong đợi để có được một câu trả lời dễ dàng cho điều này, nhưng nếu nó là tất cả có thể, tôi rất thích nghe về nó. Tóm lại:
Bảng nên thay đổi kích thước bằng cửa sổ trong khi luôn hiển thị tất cả dữ liệu không có thanh cuộn.
Kích thước phông chữ phải được đặt thành kích thước lớn nhất có thể cho phép mỗi cột của mỗi hàng hiển thị tất cả 'nội dung của nó.
Tất cả các cột phải có kích thước nhỏ nhất có thể cho phép hiển thị tất cả nội dung, ngoại trừ một cột có chức năng "* -sizing" để ăn không gian còn lại.
Vì vậy, bất kỳ cách thông minh nào để thực hiện việc này? :)
Đúng vậy! Gây tổn thương não +1 cho tôi, tôi đã suy nghĩ về các khung nhìn bên trong các tế bào riêng lẻ, nhưng tất nhiên điều đó hoàn toàn là đạo đức. Tôi chỉ cần có được một va li về các thuộc tính Stretch và tôi nên ở nhà miễn phí - cảm ơn! –