stringa sono immutable, essi non possono essere cambiati. PadRight
restituisce una nuova istanza della stringa inserita, non cambia quella da cui è stata chiamata. Quello che vuoi è questo:
Trip_Name1 = Trip_Name1.PadRight(20,' ');
C'è una grande discussione sul this StackOverflow domanda sul perché le stringhe sono immutabili.
EDIT:
Niente di tutto questo sembra funzionare. Tuttavia posso tamponare la corda con qualsiasi altro personaggio.
In realtà lo si riassegna come nell'esempio sopra? Se questo è il caso - quindi senza ulteriori dettagli Posso solo pensare di quanto segue:
- Se si archiviano questo in un database e il recupero di esso, alcuni database con le impostazioni corrette possono "Trim" per voi.
- Hai la logica da qualche altra parte che sta ritagliando gli spazi bianchi. Questo è comune quando si ha a che fare con l'input dell'utente.
EDIT 2:
avrei dovuto essere più preciso
ho intenzione di prendere un ipotesi, sulla base di convenzioni di denominazione che avete a che fare con l'HTML/ASP.NET. Nella maggior parte dei casi, in HTML - white space is collapsed. Ad esempio:
<div><a>Hello World</a></div>
<div><a>Hello World</a></div>
Entrambi i a
tag verrà visualizzata la stessa perché lo spazio bianco viene compresso. Se stai effettivamente lavorando con HTML, è probabile che la tua ragione e perché il padding funzioni per tutti gli altri personaggi. Se si esegue un view-source del markup reso, contiene gli spazi bianchi aggiuntivi?
Se si desidera mantenere gli spazi bianchi, provare ad applicare uno stile CSS sul proprio elemento chiamato white-space
e impostarlo su pre
. Ad esempio:
<a style="white-space:pre">hello world </a>
Ciò causerà la conservazione dello spazio bianco. Tieni presente che l'utilizzo dello spazio bianco come questo presenta degli svantaggi. I browser non li rendono in modo identico, ecc. Non lo userei per scopi di layout.Prendi in considerazione l'utilizzo di CSS e qualcosa come min-width
invece.
Che cos'è il "Trip_Name1" nei test? Qual è il valore di ritorno di tali metodi (ad esempio, cosa significa * "non sembra funzionare" * significa)? E tu sai che questi metodi non modificheranno il valore di "Trip_Name1", giusto? –
Puoi fornire il codice di esempio? A proposito, le stringhe sono immutabili e devi riassegnare il valore del risultato dopo il padding –
avrei dovuto essere più specifico, ecco il codice completo: lnk_showmatch_1.Text = u_trip.Trip_Name1.PadRight (20, ''); – Bruce