2010-11-26 4 views
1

In der folgenden Legende ist der Text viele Zeichen (long Frage) ..Unsere I will, dass nur die ersten 10 Zeichen der Frage angezeigt werden und dann dots..something wie: -über Legende Tag

Was ist asp.net? Was macht man ...

Wie mache ich das?

<fieldset style="padding: 10px;">       
    <legend style="padding: 5px;"> 
    <b>  
     Question:&nbsp; &nbsp;  
     <%#Eval("Question")%>  
    </b> 
    </legend>      
</fieldset> 
+1

Erfahren Sie, wie Sie Code und Markup richtig formatieren und starten Sie es! Bitte – abatishchev

Antwort

4

In dem Code hinter dem Sie die Question Eigenschaft aussetzen, würde ich auch eine TruncatedQuestion wie so aussetzen:

public string TruncatedQuestion 
{ 
    get 
    { 
     if (Question.Length > 10) 
      return Question.Substring(0,10) + "..."; 
     else 
      return Question; 
    } 
} 

Dann <%#Eval("Question")%> mit <%#Eval("TruncatedQuestion")%>

+0

Wo muss ich diese TruncatedQuestion-Zeichenfolge in meinem Code definieren? wo genau? – Serenity

+0

Wo ist die Frage aktuell definiert? Daneben. –

1
in Ihrem Code ersetzen

Sie können ausführen Dies über CSS mit einigen richtigen Markup:

HTML:

<fieldset> 
    <legend>Question: <% #Eval("Question") %></legend> 
</fieldset> 

CSS:

fieldset 
{ 
    padding: 10px; 
} 

legend 
{ 
    padding: 5px; 
    width: 10em; 
    text-overflow: ellipsis; 
    overflow: hidden; 
    white-space: nowrap; 
} 

text-overflow:ellipsis wird in IE7, Safari und Mozilla arbeiten.

+0

es gibt mir diesen Fehler "Validierung (CSS 2.0): 'Text-Überlauf' ist kein bekannter CSS-Eigenschaftenname." – Serenity

+0

Das liegt daran, dass es sich um einen CSS 3.0-Wert handelt und die Unterstützung von Visual Studio für CSS ziemlich unterdurchschnittlich ist. Es ist sicher, die Warnungen zu ignorieren und selbst zu sehen, was der Browser produziert. Im schlimmsten Fall wird es ignoriert und die Auslassungspunkte nicht für Sie hinzugefügt. –

+0

nah nicht funktioniert – Serenity