2008-08-25 17 views
14

Ich habe einen Bericht mit vielen Feldern, die ich versuche, horizontal auf 1 Seite zu kommen (es ist mir egal, ob es 2 oder 200 Seiten vertikal ist ... will nur nicht mit 2 Seiten zu tun haben) durch x Seiten langes Zug-Wrack). Das heißt, es geht um Kontaktinformationen.Wie setze ich ein Textfeld auf mehrere Zeilen in SSRS?

Meine Idee war, zu tun:

Name:  Address: City:  State: ... 
Jon Doe Addr1  ThisTown XX  ...  
      Addr2 
      Addr3 
----------------------------------------------- 
Jane Doe Addr1  ThisTown XX  ... 
      Addr2 
      Addr3 
----------------------------------------------- 

Gibt es eine Möglichkeit, ein textbox zu setzen mehrzeiligen (oder das SQL-Ergebnis) sein? Habe ich etwas verdammt offensichtlich übersehen?


Die CanGrow-Eigenschaft ist standardmäßig aktiviert, und ich habe überprüft, dass dies der Fall ist. Mein Problem ist, dass ich nicht weiß, wie man einen Zeilenumbruch erzwingt. Ich bekomme die 3 Adressfelder, die nur eine Zeile füllen und dann zu einem anderen umbrechen. Ich habe versucht /n, \n (da ich mich nie erinnern kann, welche der richtige Schrägstrich ist), <br>, <br /> (da der Bericht in einem ReportViewer-Steuerelement in einer ASP.NET-Website angezeigt wird). Ich kann mir keine anderen Möglichkeiten vorstellen, den Text zu umhüllen.

Gibt es eine Möglichkeit, die Ergebnisse aus der Datenbank als 3 Zeilen Text/Zeichen zu erhalten?

Antwort

18

Alter des Textfeld des Berichts an:

= Fields!Addr1.Value + VbCrLf + 
    Fields!Addr2.Value + VbCrLf + 
    Fields!Addr3.Value 
+2

anstatt 'VbCrLf' zu verwenden, sollten Sie 'System.Environment.NewLine' als Best Practices verwenden – WiiMaxx

+1

@WiiMaxx Und ersetzen Sie' + 'zu' & ' – thinco

1

Link Pause macht dieses

chr (10)

+0

Bitte geben Sie Ihre Antwort etwas ausführlicher. –

5

Ich hatte ein zusätzliches Problem, nachdem sie in den chr(10) in die Datenbank stellen.

Im Bereich (im Bericht) hinzufügen in:

=REPLACE(Fields!Addr1.Value, CHR(10), vbCrLf) 
4

Umschalt + Enter Schlagen, während in der Textbox der Eingabe einer Pause einer Zeile erstellt.

= Fields!Field1.Value + System.Environment.NewLine + Fields!Field2.Value 
3

Meine Daten wurden in einer SL-Anwendung, benötigt dies für den Feldausdruck

=REPLACE(Fields!Text.Value, CHR(13), vbCrLf) 
+0

die [post] (http://stackoverflow.com/a/3582842/1993545) von Sam sagt schon das gleiche, also -1 für die Wiederholung – WiiMaxx

+2

upvoted Ursache 'Chr (10)! = Chr (13)' –

0

Versuchen Sie dieses gefangen. Klicken Sie dann mit der rechten Maustaste auf den Textfeld-Platzhalter, wählen Sie die Eigenschaften des Platzhalters aus und wählen Sie HTML. Damit Multiline wirksam wird, müssen Sie <br/> Tag zwischen diese Zeilen einfügen.

0

In RDLC berichtet, können Sie eine Textbox placehoder konvertieren:

Verwandte Themen