2013-08-05 36 views
12

Tôi đang cố gắng thiết lập danh sách các mục trong WPF có chứa các chuỗi có độ dài ngẫu nhiên (tên người). Phần lớn trong số họ nói chung là trong một kích thước nhất định, nhưng đôi khi bạn đi qua một chuỗi quá lâu mà nó chạy ra khỏi giới hạn của nó container. Tôi thường chỉ cắt ngắn nó khi nó quá dài, nhưng tôi sẽ hiển thị toàn bộ chuỗi.Văn bản tỷ lệ WPF chỉ vừa khi quá lớn

Làm cách nào để buộc văn bản giữ nguyên kích thước bình thường, trừ khi quá lớn để vừa ... trong trường hợp nào nó giảm kích thước để vừa?

Chú ý: Đây không phải là giống như mở rộng quy mô toàn bộ văn bản để phù hợp với một kích thước nhất định, được thực hiện bằng cách sử dụng viewbox xung quanh text

IE: Đây là KHÔNG những gì tôi muốn:

<Viewbox MaxWidth="100"> 
    <TextBlock Text="{Binding EmployeeDisplayName, UpdateSourceTrigger=PropertyChanged}" HorizontalAlignment="Left" VerticalAlignment="Center"/> 
</Viewbox> 

Điều này làm cho mọi thứ mở rộng khi quá nhỏ, cũng như giảm quy mô khi quá lớn. Tôi CHỈ muốn nó giảm quy mô khi quá lớn và KHÔNG BAO GIỜ mở rộng quy mô khi quá nhỏ ...

Bất kỳ suy nghĩ nào?

+0

trùng lặp: https://stackoverflow.com/questions/14881683/wpf-automatic-resize-font-until-it-fits-within-parent-control –

Trả lời

17

Sử dụng số Viewbox nhưng đặt thuộc tính StretchDirection thành DownOnly.

<Viewbox MaxWidth="100" StretchDirection="DownOnly"> 
    <TextBlock Text="{Binding EmployeeDisplayName, UpdateSourceTrigger=PropertyChanged}" HorizontalAlignment="Left" VerticalAlignment="Center"/> 
</Viewbox> 
+0

Chính xác những gì tôi đang tìm kiếm. Người đàn ông, tôi không thể tìm thấy điều này ở tất cả từ Google, những gì một sửa chữa đơn giản lol. Tôi figured guys WPF đã nghĩ về điều này tại một số điểm này hay cách khác ... Cảm ơn Logged –

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