อะไรคือ "ความคิด" ที่แตกต่างระหว่างTextWrapping="Wrap"
และTextWrapping="WrapWithOverflow"
(เช่นสำหรับกล่องข้อความ)? ในหน้า MSDN เกี่ยวกับกล่องข้อความของชั้นเรียนไม่มีอะไร ... ขอบคุณ
อะไรคือ "ความคิด" ที่แตกต่างระหว่างTextWrapping="Wrap"
และTextWrapping="WrapWithOverflow"
(เช่นสำหรับกล่องข้อความ)? ในหน้า MSDN เกี่ยวกับกล่องข้อความของชั้นเรียนไม่มีอะไร ... ขอบคุณ
คำตอบ:
WrapWithOverflow การแบ่ง บรรทัดเกิดขึ้นหากบรรทัดล้นเกินกว่าความกว้างบล็อกที่มีอยู่ อย่างไรก็ตามบรรทัดอาจล้นเกินกว่าความกว้างของบล็อกหากอัลกอริทึมการทำลายเส้นไม่สามารถกำหนดโอกาสในการทำลายเส้นได้เช่นในกรณีของคำที่ยาวมากซึ่งถูก จำกัด ในคอนเทนเนอร์ความกว้างคงที่โดยไม่อนุญาตให้เลื่อน
NoWrap ไม่มีการตัดบรรทัด
การตัดการแบ่ง บรรทัดเกิดขึ้นหากบรรทัดล้นเกินกว่าความกว้างของบล็อกที่มีอยู่แม้ว่าอัลกอริทึมการทำลายเส้นมาตรฐานไม่สามารถกำหนดโอกาสในการทำลายเส้นใด ๆ ได้เช่นในกรณีของคำที่ยาวมากซึ่ง จำกัด ไว้ในคอนเทนเนอร์ที่มีความกว้างคงที่
หวังว่านี่จะช่วยได้
WrapWithOverFlow
จะไม่ทำลายคำ แต่Wrap
จะ?
ตัวอย่างบางส่วน:
นี่เป็นรุ่นดั้งเดิมที่ยังไม่ได้เปิด:
NoWrap
นี่คือ
Wrap
นี่คือ คำพูดRemove
และSample
ถูกห่อหุ้มที่ve
และle
ตามลำดับแม้ว่าจะไม่มีโอกาสหยุดพัก
WrapWithOverflow
นี่คือ ve
และle
มองไม่เห็น (พวกเขาล้นกว้างบล็อกมี) เพราะไม่มีโอกาสแบ่งบรรทัด All
ในทั้งสองกรณีได้รับการห่อเพราะspace
ตัวละครเป็นโอกาสที่แบ่งบรรทัด
แก้ไข:
ตามที่แนะนำในความคิดเห็นต่อไปนี้เป็นตัวอย่างของวิธีการWrap
ปฏิบัติต่อช่องว่าง เมื่อWidth
เป็น100
, Wrap
และWrapWithOverflow
เหมือนกัน Wrap
ปฏิบัติช่องว่างระหว่างwider
และexample
เป็นโอกาสในการแบ่งบรรทัดดังนั้นจึงควรexample
ติดตั้งบรรทัดใหม่เพื่อรักษาคำศัพท์ทั้งหมดอย่างต่อเนื่อง
Wrap
ละเว้นช่องว่างระหว่างช่องว่างอย่างสมบูรณ์ แต่นั่นไม่เป็นความจริง
สิ่งหนึ่งที่จะเพิ่มให้กับคำตอบอื่น ๆ WrapWithOverflow ช่วยให้คุณใช้การตัดข้อความ (จุดไข่ปลา) กับคำศัพท์ยาว ๆ ที่ถูกตัดออก:
<TextBlock TextWrapping="WrapWithOverflow" Width="120" TextTrimming="CharacterEllipsis">
A really long word is antidisestablishmentarianism and we can use ellipsis trimming.
</TextBlock>
WrapWithOverflow
จะทราบว่าSilverlight ไม่รองรับ เฉพาะWrap
และNoWrap
ได้รับการสนับสนุนใน Silverlight msdn.microsoft.com/en-us/library/ ......