2013-03-05 54 views
1

我有一個WPF/Silverlight控制 - 200px寬度。問題是我想放置一個項目標題,但我不能換行。我認爲我可以縮放字體,但只是發現它沒有意義,因爲這些標題可以是長度爲VEERY。幾分鐘後,我決定在我的控件的結尾30像素處做不透明漸變蒙版。長文本和不透明漸變蒙版

E.g.當我有一個單詞QWERTYUIOPASDFGHJKL,並且控件可以顯示的最大子字符串是QWERTY,那麼TY具有不透明度漸變蒙版。當鼠標指針進入我的作品區域時,會顯示工具提示(或其他內容)(全文)。

我有兩個問題:

  1. 什麼是實現這種不透明梯度面膜的最佳方式是什麼?
  2. 如何在鼠標進入文本區域後顯示整個文本(我認爲ToolTip是一個不好的解決方案)?
+1

爲什麼不簡單地將[TextTrimming](http://msdn.microsoft.com/en-us/library/system.windows.controls.textblock.texttrimming.aspx)設置爲'CharacterEllipsis'?至少這是解決這個問題的「標準」方法。此外,ToolTip也是一種標準解決方案。 – Clemens 2013-03-05 10:37:39

回答

1
  1. 好吧,我不知道你是否要重新考慮這種做法。更容易實現,可能更容易理解的方式將使用省略號。每個用戶都知道,當他看到這樣的省略號時,這只是標題的一部分。
    TextBlock有這樣的內置功能。感謝Clemens:TextBlock.TextTrimming=CharacterEllipsis

  2. 爲什麼ToolTip是一個糟糕的方法?如果你不喜歡它的樣子,你可以自定義樣式。

+0

1.不知道'CharacterEllipsis'修剪:)謝謝。 2.看起來不好。我們的團隊希望我們的應用成爲理想:) – Nickon 2013-03-05 10:42:06

+0

Btw。什麼是Silverlight的解決方案?修剪道具沒有'CharacterEllipsis'選項。 – Nickon 2013-03-05 10:45:38

+1

那麼根據[this](http://msdn.microsoft.com/en-us/library/system.windows.controls.textblock.texttrimming%28v=vs.95%29.aspx)有一個文本修剪選項至少對於「TextBlock」來說。 – DHN 2013-03-05 11:14:32