Top > Programming > .NetFramework > WPF > TextClipping
Last-modified: Thu, 22 Aug 2013 19:46:35 JST
Counter:11713 Today:2 Yesterday:2 Online:7
このエントリーをはてなブックマークに追加

表示しきれないテキストの端に"…"を表示する

About

テキストの表示幅が足りずに、中途半端な位置でテキストの表示が終了することがあります。多くのインターフェースでは"Abcd…"といったように"…"を表示することによって、それが以降に続くテキストであることをしまします(Tooltipで全文表示したり)。

元々Windows.Formsでは"Label.AutoEllipsisプロパティ"として提供されていたものですが、残念ながらWPFのLabelには標準でこの機能が提供されていません。しかしながら、使い勝手は少々悪いものの、WPFにもこれを実現する機能が提供されています。

TextBlock.TextTrimming

TextTrimming列挙型の値を設定することで、"Abcd…"といった表記が可能になります。しかしながら2013年4月現在では、基本的にTextBlockでのみ有効な設定、TextBlockにのみ用意されるプロパティのようです。特定のコントロール中にこのトリミングの機能を利用したい場合には、TextBlockをそのコントロールの中に定義するなどする必要があります(Templateなり、子要素とするなり)。

MSDNのサンプルが非常に見やすいのでここでは足がかりの紹介だけにするとします。各プロパティ値の差異などについては、MSDNを参照してください。