TextTrimming mit Ellipse und einem Doppelpunkt
Dies ist eine relativ einfache Frage:
Kann ich schneiden Sie einen text mit Auslassungszeichen:
<TextBlock Text="{Binding}" TextTrimming="CharacterEllipsis"/>
es würde mir etwas entlang der Linien von:
"Dieser Satz ist zu lang"
=>
"Dieser Satz, den ich..."
Das ist toll und gut, aber was ich eigentlich möchte ist dies:
"Dieser Satz ...:" /"Dieser Satz...:"
Was ich Suche, ist ein Doppelpunkt nach dem Ellipsen. Gibt es eine einfache Möglichkeit, dies zu erreichen?
EDIT:
sorry für die Verwirrung.
Ich die Standardeinstellung ändern möchten Ellipse-string aus der '...' , '...:'. Wie gut, ich bin noch ein Doppelpunkt in der text-Zeichenfolge selbst. Auf diese Weise, ich werde immer den Doppelpunkt angezeigt. Wie gut, sollte alles auf einer Zeile, in jeder situation.
hier sind ein paar Ergebnisse, die akzeptabel sind:
kurz genug:
Weg zu l...:
InformationsquelleAutor der Frage FZdev | 2012-03-09
Du musst angemeldet sein, um einen Kommentar abzugeben.
Dies funktioniert, aber ich musste hinzufügen eine Polsterung, so dass der Doppelpunkt immer sichtbar bleibt:
InformationsquelleAutor der Antwort Phil
Zwei Textblöcke mit dem Ellipsen Beispiel in der ersten und der Doppelpunkt in der zweiten.
Update:
Wie es aussieht wird das eine relativ einfache Frage mit viel Komplikationen.
Könnten Sie versucht sein, einige Textblöcke, die erste mit der Ziel-text und zwei andere anzeigen von ":" und "...:" und wechseln zwischen mit einer Sichtbarkeit von Wert-Konverter basierend auf, ob der erste TextBlock hatten genug Platz, um alle Ihre text. Dieser hat Möglichkeiten, aber das Potenzial hat, für die unstable-layouts.
Gerade implementiert eine benutzerdefinierte panel kann ich mir vorstellen, eine mögliche Lösung mit einem entworfen, um drei Kinder, die die drei Textblöcke beschrieben abovel
Einer benutzerdefinierten panel erbt von Panel überschreiben sollten zwei Schlüssel-Methoden: Messen und zu Organisieren.
In der measure-Methode, alle Kinder, die gemessen werden sollte.
In der arrangier-Methode prüfen, ob genug Platz zur Anzeige der ersten beiden Kinder, und wenn ja, setzen Sie Sie nebeneinander. Wenn nicht genug Platz ist, zeigt die erste untergeordnete Größe zu ermöglichen, das Dritte Kind der Platz zur Anzeige und legen Sie das Dritte Kind rechts ausgerichtet.
Update:
Habe ich versucht die custom panel-und es klappte mit Ausnahme der ersten TextBox ist clips teilweise Zeichen.
Die ultimative Lösung für saubere Formatierung wäre eine Methode, die das anpassen der Anzeige der Zeichenfolge, bis Sie passt in den vorgesehenen Platz mit den entsprechenden suffix angewendet.
InformationsquelleAutor der Antwort Doug Ferguson