показывать время

Извините за грубый код, я пытаюсь отобразить продолжительность видео с учетом времени в секундах. Я был ниже, но это не работает должным образом.

Я хочу, чтобы он просто отображался красиво - то есть должен отображать 9: 59, а не 09: 59.

Если часы равны нулю, не отображать часы, если минуты равны нулю, не отображать минуты.

public static string GetTimeSpan(int secs)
{
    TimeSpan t = TimeSpan.FromSeconds(secs);

    string answer;
    if (secs < 60)
    {
        answer = string.Format("{0:D2}s", t.Seconds);
    }
    else if (secs < 600)//tenmins
    {
        answer = string.Format("{0:m}m:{1:D2}s", t.Minutes, t.Seconds);

    }
    else if (secs < 3600)//hour
    {
        answer = string.Format("{0:mm}m:{1:D2}s", t.Minutes, t.Seconds);
    }
    else
    {
        answer = string.Format("{0:h}h:{1:D2}m:{2:D2}s",
                                    t.Hours,
                                    t.Minutes,
                                    t.Seconds);
    }

    return answer;
}

Ответы на вопрос(4)

Ваш ответ на вопрос