2012-09-06 18 views
10

Nếu bạn chạy mã này và giảm thiểu/tối đa hóa độ rộng của cửa sổInline đối tượng trong TextBlock với TextTrimming = CharacterEllipsis hoặc WordEllipsis

<TextBlock TextTrimming="WordEllipsis" > 
    <Run Text="I want that this rectangle will be placed "/> 
    <Rectangle Fill="Black" Width="20" Height="10" /> 
    <Run Text=" here when I minimize width of the window"/> 
</TextBlock> 

bạn sẽ thấy những gì Rectange sẽ chuyển sang phía bên trái. enter image description here enter image description here

Có phải lỗi trong WPF không?

+1

Tôi không tìm thấy bất kỳ điều gì trong tài liệu WPF đề cập đến rằng InlineUIContainers (chẳng hạn như hình chữ nhật) được miễn cắt tỉa văn bản. Vì vậy, tôi nghĩ rằng đó là một lỗi trong việc thực hiện WPF hoặc một thiếu sót trong tài liệu WPF. Tôi đề nghị bạn tạo một báo cáo lỗi trên [Microsoft Connect] (http://connect.microsoft.com/). –

Trả lời

0

Tôi đoán đây không phải là lỗi. Hãy thử để mất TextTrimming="WordEllipsis" tài sản ra khỏi khối văn bản (nó ảnh hưởng đến toàn bộ kiểm soát) và bạn sẽ thấy rằng hình chữ nhật sẽ không di chuyển với bạn thay đổi kích thước cửa sổ beacause bạn không có bất kỳ tài sản HorizentalAligment.

0

Trong khi nó có vẻ là một lỗi, đây có thể là một cách giải quyết:

<TextBlock TextTrimming="WordEllipsis" > 
<Run Text="I want that this rectangle will be placed "/> 
<Run Text="&#x25A0;" FontSize="40" BaselineAlignment="Center"/> 
<Run Text=" here when I minimize width of the window"/> 
</TextBlock> 

Xem Unicode Characters in the Geometric Shapes Block.

+0

Lưu ý rằng tôi đã cố gắng giải quyết nó bằng cách đặt ba '' TextBlock'', một cái sau mỗi khác trong một '' DockPanel'', nhưng kết quả không thỏa mãn. – Ron

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