sto facendo un po 'di matematica con i timespans in .Net, e di tanto in tanto i risultati somma in un periodo negativo. Quando visualizzo il risultato ho problemi a formattarlo per includere l'indicatore negativo.Formattazione di un periodo negativo
Dim ts as New Timespan(-10,0,0)
ts.ToString()
Questo mostrerà "-10: 00: 00", che è buono, ma non voglio mostrare i secondi, in modo provato questo.
ts.ToString("hh\:mm")
Questo restituisce "10:00" e ha fatto cadere il "-" dalla parte anteriore, che è il punto cruciale della questione. La mia soluzione corrente è questa:
If(ts < TimeSpan.Zero, "-", "") & ts.ToString("hh\:mm")
ma speravo di ottenere lo stesso utilizzando solo la stringa di formato.
Così molto strano. MSDN suggerisce che questo è supportato, attraverso il formato 'c', ma se lo si utilizza in un formato personalizzato, si blocca http://msdn.microsoft.com/en-us/library/ee372286(v=vs.100). aspx –